Hướng dẫn what are tokens in python class 11? - mã thông báo trong lớp python 11 là gì?
Chương trước đã đưa ra một giới thiệu ngắn gọn về giao diện người dùng Python. Chương này sẽ làm trầy xước bề mặt của lập trình Python và phơi bày các yếu tố cơ bản mà một lập trình viên cần biết trước. Biến, định danh và nghĩa đen Một biến là một vị trí lưu trữ có tên biểu tượng liên quan (được gọi là định danh của Hồi giáo), chứa một số giá trị (có thể là theo nghĩa đen hoặc dữ liệu khác) có thể thay đổi. Mã định danh là một tên được sử dụng để xác định một biến, chức năng, lớp, mô -đun hoặc đối tượng khác. Theo nghĩa đen là một ký hiệu cho các giá trị không đổi của một số loại tích hợp. Theo nghĩa đen có thể là chuỗi, số nguyên đơn giản, số nguyên dài, số điểm nổi, số tưởng tượng. Ví dụ: trong các biểu thức VARL và VAR2 là các định danh, trong khi 5 và ‘Tom, lần lượt là số nguyên và chuỗi. Hãy xem xét một kịch bản trong đó một biến được tham chiếu bởi Mã định danh A và biến chứa một danh sách. Nếu cùng một biến được tham chiếu bởi định danh B và nếu một phần tử trong danh sách được thay đổi, thay đổi sẽ được phản ánh trong cả hai định danh của cùng một biến. Bây giờ, kịch bản trên có thể được sửa đổi một chút, trong đó A và B là hai biến khác nhau. Có một số quy tắc cần được tuân theo để đặt tên định danh hợp lệ: Mã thông báo Một mã thông báo là một chuỗi gồm một hoặc nhiều ký tự có ý nghĩa như một nhóm. Xem xét một biểu thức: Các mã thông báo trong biểu thức trên được đưa ra trong Bảng 2-1: Bảng 2-1: Mã thông báo + Nhà điều hành bổ sung Quá trình chuyển đổi một chuỗi các ký tự thành một chuỗi các mã thông báo được gọi là phân tích từ vựng. Một chương trình hoặc chức năng thực hiện phân tích từ vựng được gọi là máy phân tích từ vựng, lexer hoặc tokenizer. Một Lexer thường được kết hợp với trình phân tích cú pháp (ngoài phạm vi của cuốn sách này), cùng nhau phân tích cú pháp của ngôn ngữ máy tính. Python hỗ trợ các loại mã thông báo sau: Newline, thụt lề, cống hiến, định danh, từ khóa, nghĩa đen, toán tử và phân định. Các từ khóa Các định danh sau (như được hiển thị dưới dạng đầu ra trong mã sau) được sử dụng làm từ dành riêng (hoặc từ khóa của trực tuyến) của ngôn ngữ và không thể được sử dụng làm số nhận dạng thông thường. Các nhà khai thác thành viên. Nhà điều hành Sự mô tả Ví dụ sau đây minh họa việc sử dụng các toán tử được thảo luận ở trên. Toán tử chuyển nhượng toán tử là một toán tử được sử dụng để liên kết hoặc phục hồi tên với các giá trị. Bài tập tăng cường là sự kết hợp, trong một tuyên bố duy nhất, của một hoạt động nhị phân và một câu lệnh gán. Một biểu thức gán tăng cường như x+= l có thể được viết lại là x = x+1. Bảng 2-4 Tranh thủ các toán tử gán với mô tả.Table 2-4: toán tử chuyển nhượng Ví dụ sau đây minh họa việc sử dụng các toán tử được thảo luận ở trên. Toán tử chuyển nhượng toán tử là một toán tử được sử dụng để liên kết hoặc phục hồi tên với các giá trị. Bài tập tăng cường là sự kết hợp, trong một tuyên bố duy nhất, của một hoạt động nhị phân và một câu lệnh gán. Một biểu thức gán tăng cường như x+= l có thể được viết lại là x = x+1. Bảng 2-4 Tranh thủ các toán tử gán với mô tả.Table 2-4: toán tử chuyển nhượng Ví dụ sau đây minh họa việc sử dụng các toán tử được thảo luận ở trên. Toán tử chuyển nhượng toán tử là một toán tử được sử dụng để liên kết hoặc phục hồi tên với các giá trị. Bài tập tăng cường là sự kết hợp, trong một tuyên bố duy nhất, của một hoạt động nhị phân và một câu lệnh gán. Một biểu thức gán tăng cường như x+= l có thể được viết lại là x = x+1. Bảng 2-4 Tranh thủ các toán tử gán với mô tả.Table 2-4: toán tử chuyển nhượng *= Ví dụ sau đây minh họa việc sử dụng các toán tử được thảo luận ở trên. Toán tử chuyển nhượng toán tử là một toán tử được sử dụng để liên kết hoặc phục hồi tên với các giá trị. Bài tập tăng cường là sự kết hợp, trong một tuyên bố duy nhất, của một hoạt động nhị phân và một câu lệnh gán. Một biểu thức gán tăng cường như x+= l có thể được viết lại là x = x+1. Bảng 2-4 Tranh thủ các toán tử gán với mô tả.Table 2-4: toán tử chuyển nhượng Ví dụ sau đây minh họa việc sử dụng các toán tử được thảo luận ở trên. Toán tử nhận dạng toán tử nhận dạng so sánh vị trí bộ nhớ của hai đối tượng. Bảng 2-8 cung cấp một danh sách các toán tử nhận dạng bao gồm một giải thích nhỏ. Có thể 2-9: toán tử nhận dạng Ví dụ sau đây minh họa việc sử dụng các toán tử được thảo luận ở trên. Toán tử ưu tiên toán tử ưu tiên xác định cách đánh giá một biểu thức. Một số nhà khai thác có ưu tiên cao hơn những người khác; Ví dụ, toán tử nhân có ưu tiên cao hơn toán tử bổ sung. Trong biểu thức x = 7 +3*2, x được gán 13, không phải 20, vì toán tử*có quyền ưu tiên cao hơn +, do đó, trước tiên nó nhân lên 3*2 và sau đó thêm vào 7. Bảng 2-10 tóm tắt sự ưu tiên của nhà điều hành ở Python, từ mức ưu tiên thấp nhất đến ưu tiên cao nhất (từ trên xuống dưới). Người vận hành trong cùng một hộp có cùng một ưu tiên. = *, /, %, // ~,+, - ) [ ] @ { } Thì & nbsp;: & nbsp ;. Thì Các cấp độ thụt của các dòng liên tiếp được sử dụng để tạo ra các mã thông báo thụt lề và dành cho các mã thông báo. Người ta có thể quan sát rằng bằng cách chèn khoảng trắng ngay từ đầu đã dẫn đến ngoại lệ thụt lề. Ví dụ sau đây cho thấy thụt không đồng đều không phải là một lỗi. Cần thụt vào ngôn ngữ lập trình C, có rất nhiều cách để đặt niềng răng để nhóm các câu lệnh. Nếu một lập trình viên có thói quen đọc và viết mã sử dụng một phong cách, anh ta hoặc cô ta sẽ cảm thấy ít nhất là hơi khó chịu khi đọc (hoặc được yêu cầu viết) một phong cách khác. Nhiều kiểu mã hóa đặt khung bắt đầu/kết thúc trên một dòng. Điều này làm cho các chương trình dài hơn đáng kể và chất thải không gian màn hình có giá trị, khiến việc có được một cái nhìn tổng quan tốt về chương trình hơn. Guido Van Rossum tin rằng việc sử dụng thụt vào nhóm là cực kỳ thanh lịch và đóng góp rất nhiều cho sự rõ ràng của chương trình Python điển hình. Vì không có dấu ngoặc bắt đầu/kết thúc, không thể có sự bất đồng giữa việc nhóm được nhận thức bởi trình phân tích cú pháp và người đọc người. Ngoài ra, Python ít dễ bị xung đột theo kiểu mã hóa. Các loại tích hợp Phần này mô tả các loại dữ liệu tiêu chuẩn được tích hợp vào trình thông dịch. Có nhiều loại dữ liệu tích hợp khác nhau, cho ví dụ, số, trình tự, ánh xạ, v.v., nhưng cuốn sách này sẽ bao gồm một số loại. Biểu diễn sơ đồ của các loại tích hợp khác nhau được thể hiện trong Hình 2-1. Các loại số Có ba loại số riêng biệt: số nguyên, số điểm nổi và số phức. Số nguyên có thể được phân loại phụ thành ba loại: Số nguyên số nguyên đơn giản (hoặc đơn giản là số nguyên) đại diện cho số nguyên trong phạm vi -2147483648 đến 2147483647. Khi kết quả của hoạt động sẽ nằm ngoài phạm vi này, kết quả thường được trả về dưới dạng số nguyên dài. >>> a=[1, 2, 3] >>> b=a[:] # Copying data from a to b. >>> b [1, 2, 3] >>> a[1]=10 >>> a [1, 10, 3] >>> b [1, 2, 3]2 Hàm tích hợp int (x = 0) chuyển đổi một số hoặc chuỗi x thành số nguyên hoặc trả về 0, nếu không có đối số nào được đưa ra. >>> a=[1, 2, 3] >>> b=a[:] # Copying data from a to b. >>> b [1, 2, 3] >>> a[1]=10 >>> a [1, 10, 3] >>> b [1, 2, 3]3 Số nguyên dài Điều này đại diện cho các số nguyên trong phạm vi hầu như không giới hạn, tùy thuộc vào bộ nhớ có sẵn. Hàm tích hợp dài (x = 0) chuyển đổi một chuỗi hoặc số thành một số nguyên dài. Nếu đối số là một chuỗi, nó phải chứa một số có thể ký. Nếu không có lập luận được đưa ra, OL được trả lại. >>> a=[1, 2, 3] >>> b=a[:] # Copying data from a to b. >>> b [1, 2, 3] >>> a[1]=10 >>> a [1, 10, 3] >>> b [1, 2, 3]4 Các chữ số nguyên với các số nguyên dài l hoặc 1 hậu tố (L được ưa thích vì 11 trông quá giống với mười một). >>> a=[1, 2, 3] >>> b=a[:] # Copying data from a to b. >>> b [1, 2, 3] >>> a[1]=10 >>> a [1, 10, 3] >>> b [1, 2, 3]5 Các biểu thức sau đây là thú vị. >>> a=[1, 2, 3] >>> b=a[:] # Copying data from a to b. >>> b [1, 2, 3] >>> a[1]=10 >>> a [1, 10, 3] >>> b [1, 2, 3]6 Boolean Điều này đại diện cho các giá trị sự thật sai lầm và đúng. Loại Boolean là loại phụ của số nguyên đơn giản và các giá trị Boolean hoạt động giống như các giá trị 0 và 1. Hàm tích hợp bool () chuyển đổi giá trị thành boolean, sử dụng quy trình kiểm tra sự thật tiêu chuẩn. >>> a=[1, 2, 3] >>> b=a[:] # Copying data from a to b. >>> b [1, 2, 3] >>> a[1]=10 >>> a [1, 10, 3] >>> b [1, 2, 3]7 Số điểm nổi Điều này đại diện cho số điểm thập phân. Python chỉ hỗ trợ số điểm nổi độ chính xác kép (chiếm 8 byte bộ nhớ) và không hỗ trợ số điểm nổi chính xác đơn (chiếm 4 byte bộ nhớ). Chức năng tích hợp float () chuyển đổi một chuỗi hoặc một số thành số điểm nổi. >>> a=[1, 2, 3] >>> b=a[:] # Copying data from a to b. >>> b [1, 2, 3] >>> a[1]=10 >>> a [1, 10, 3] >>> b [1, 2, 3]8 Số phức tạp Điều này đại diện cho các số phức tạp có các phần thực và tưởng tượng. Phức hợp hàm tích hợp () được sử dụng để chuyển đổi số hoặc chuỗi thành số phức. >>> a=[1, 2, 3] >>> b=a[:] # Copying data from a to b. >>> b [1, 2, 3] >>> a[1]=10 >>> a [1, 10, 3] >>> b [1, 2, 3]9 Nối J hoặc J vào một chữ số có số lượng phức tạp. sum=6+20 Các phần thực và tưởng tượng của một số Z phức tạp có thể được truy xuất thông qua các thuộc tính z. thực và z. hình ảnh. sum=6+21 Các loại trình tự này đại diện cho các bộ được đặt hàng hữu hạn, thường được lập chỉ mục bởi các số không âm. Khi độ dài của một chuỗi là n, bộ chỉ số chứa các số 0, 1,. . ., N-1. Mục I của chuỗi A được chọn bởi A [i]. Có bảy loại chuỗi: chuỗi, chuỗi unicode, danh sách, tuple, bytearray, bộ đệm và các đối tượng Xrange. Trình tự có thể được thay đổi hoặc bất biến. Trình tự bất biến là một chuỗi không thể thay đổi sau khi nó được tạo ra. Nếu đối tượng chuỗi bất biến chứa các tham chiếu đến các đối tượng khác, các đối tượng khác có thể bị thay đổi và có thể bị thay đổi; Tuy nhiên, việc thu thập các đối tượng được tham chiếu trực tiếp bởi một đối tượng bất biến không thể thay đổi. Trình tự đột biến là một chuỗi có thể được thay đổi sau khi nó được tạo. Có hai loại trình tự đột biến nội tại: danh sách và mảng byte. Itable là một đối tượng có khả năng trả lại các thành viên của mình một lần. Ví dụ về các vòng lặp bao gồm tất cả các loại trình tự (như danh sách, str và tuple) và một số loại không theo trình tự như chế độ ăn kiêng và tệp, v.v. ), bản đồ (), …). Khi một đối tượng có thể đi được truyền như một đối số cho hàm tích hợp iter (), nó sẽ trả về một trình lặp cho đối tượng. Một trình lặp là một đối tượng đại diện cho một luồng dữ liệu; Các cuộc gọi lặp đi lặp lại đến phương thức Iterator tiếp theo () trả về các mục liên tiếp trong luồng. Khi không có thêm dữ liệu, ngoại lệ dừng được nêu ra thay thế. Một số loại trình tự được thảo luận dưới đây: Chuỗi nó là một loại chuỗi sao cho giá trị của nó có thể là ký tự, ký hiệu hoặc số. Xin lưu ý rằng chuỗi là bất biến. sum=6+22 Chức năng tích hợp str (object = xông ‘) Trả về một chuỗi chứa một biểu diễn có thể in độc đáo của một đối tượng. Đối với chuỗi, điều này trả về chuỗi chính. Nếu không có đối số nào được đưa ra, một chuỗi trống được trả về. sum=6+23 Tuple tuple là chuỗi được phân tách bằng dấu phẩy của các đối tượng python tùy ý được đặt trong ngoặc đơn (dấu ngoặc tròn). Xin lưu ý rằng tuple là bất biến. Tuple được thảo luận chi tiết trong Chương 4. sum=6+24 Danh sách danh sách là chuỗi được phân tách bằng dấu phẩy của các đối tượng Python tùy ý được đặt trong dấu ngoặc vuông. Xin lưu ý rằng danh sách là có thể thay đổi. Thông tin thêm về danh sách được cung cấp trong Chương 4. sum=6+25 Đặt các loại này đại diện cho tập hợp các đối tượng độc đáo không có thứ tự. Như vậy, nó không thể được lập chỉ mục bởi bất kỳ chỉ số nào, tuy nhiên chúng có thể được lặp lại. Việc sử dụng phổ biến của SET là thử nghiệm thành viên nhanh, loại bỏ các bản sao khỏi một chuỗi và các hoạt động toán học như giao lộ, kết hợp, khác biệt và sự khác biệt đối xứng. Có hai loại bộ: Đặt điều này đại diện cho một bộ có thể thay đổi. Nó được tạo bởi tập hợp chức năng tích hợp () và có thể được sửa đổi sau đó bằng một số phương thức, chẳng hạn như thêm (), xóa (), v.v. Thêm thông tin về tập hợp được đưa ra trong Chương 4. sum=6+26 Tập hợp ([itable]) trả về một đối tượng tập mới, tùy chọn với các phần tử được lấy từ itable. Frozenset Điều này đại diện cho một bộ bất biến. Nó được tạo bởi chức năng tích hợp frozenset (). Vì một chiếc Frozenset là bất biến, nó có thể được sử dụng lại như một yếu tố của một tập hợp khác hoặc là khóa từ điển. sum=6+27 Frozenset ([itable]) trả về một đối tượng Frozenset mới, tùy chọn với các phần tử được lấy từ ITable. Các loại ánh xạ Điều này thể hiện một đối tượng container hỗ trợ tra cứu khóa tùy ý. Ký hiệu a [k] chọn giá trị được lập chỉ mục bởi khóa k từ ánh xạ a; Điều này có thể được sử dụng trong các biểu thức và là mục tiêu của các bài tập hoặc câu lệnh DEL. Hàm tích hợp Len () trả về số lượng mục trong ánh xạ. Hiện tại, có một loại ánh xạ duy nhất: Từ điển Một từ điển là một bộ sưu tập có thể thay đổi các giá trị không được đặt hàng được truy cập bởi khóa chứ không phải bởi chỉ mục. Trong từ điển, các khóa tùy ý được ánh xạ tới các giá trị. Thông tin thêm được cung cấp trong Chương 4. sum=6+28 Không có điều này biểu thị sự vắng mặt của một giá trị trong một tình huống, ví dụ: nó được trả về từ một hàm không trả lại rõ ràng bất cứ điều gì. Giá trị sự thật của nó là sai. Một số loại tích hợp khác như chức năng, phương thức, lớp, thể hiện lớp, tệp, mô-đun, vv được thảo luận trong các chương sau. Hàm số nguyên Chức năng sau hoạt động trên số nguyên (đồng bằng và dài). int.bit_length () Trả về số lượng bit cần thiết để biểu thị một số nguyên (đồng bằng hoặc dài) trong nhị phân, không bao gồm dấu hiệu và số không dẫn đầu. sum=6+29 Float Chức năng Một số chức năng cho số điểm nổi được thảo luận dưới đây. float.as_integer_ratio () Trả về một cặp số nguyên có tỷ lệ chính xác bằng phao gốc và với mẫu số dương. >>> import keyword >>> for kwd in keyword.kwlist: ... print kwd ... and as assert break class continue def del elif else except exec finally for from global if import in is lambda not or pass print raise return try while with yield0 float.is_integer () trả về true nếu phiên bản float là hữu hạn với giá trị tích phân, nếu không nó sẽ trả về sai. >>> import keyword >>> for kwd in keyword.kwlist: ... print kwd ... and as assert break class continue def del elif else except exec finally for from global if import in is lambda not or pass print raise return try while with yield1 Chuỗi Python có thể thao tác chuỗi, có thể được thể hiện theo nhiều cách. Chuỗi chữ có thể được đính kèm trong các trích dẫn đơn (. ví dụ. Hello, Hello Hello, v.v. Chúng cũng có thể được đặt trong các nhóm phù hợp gồm ba trích dẫn đơn hoặc đôi (chúng thường được gọi là chuỗi được trích dẫn ba), ví dụ: ' ' 'xin chào""". Một chuỗi được đặt trong các trích dẫn kép nếu chuỗi chứa một trích dẫn duy nhất (và không có trích dẫn kép), nếu không nó được đặt trong các trích dẫn đơn. >>> import keyword >>> for kwd in keyword.kwlist: ... print kwd ... and as assert break class continue def del elif else except exec finally for from global if import in is lambda not or pass print raise return try while with yield2 Các câu trên cũng có thể được viết theo một số cách thú vị khác bằng cách sử dụng trình tự thoát. >>> import keyword >>> for kwd in keyword.kwlist: ... print kwd ... and as assert break class continue def del elif else except exec finally for from global if import in is lambda not or pass print raise return try while with yield3 Trình tự thoát là các kết hợp ký tự bao gồm một dấu gạch chéo ngược (\) theo sau là một số ký tự, có ý nghĩa đặc biệt, chẳng hạn như Newline, chính bản sao lại hoặc ký tự trích dẫn. Chúng được gọi là trình tự thoát vì dấu gạch chéo ngược gây ra một lối thoát khỏi cách các ký tự thông thường được giải thích bởi trình biên dịch/thông dịch. Câu lệnh in tạo ra một đầu ra dễ đọc hơn cho các chuỗi đầu vào như vậy. Bảng 2-12 đề cập đến một số chuỗi thoát. Có thể 2-12: Trình tự thoát hiểm
Chuỗi theo nghĩa đen có thể tùy ý được đặt trước với chữ R hoặc R, chuỗi đó được gọi là Chuỗi RAW và không có sự thoát khỏi ký tự bằng cách đánh dấu ngược. >>> import keyword >>> for kwd in keyword.kwlist: ... print kwd ... and as assert break class continue def del elif else except exec finally for from global if import in is lambda not or pass print raise return try while with yield4 Cụ thể, một chuỗi thô không thể kết thúc trong một dấu gạch chéo ngược. >>> import keyword >>> for kwd in keyword.kwlist: ... print kwd ... and as assert break class continue def del elif else except exec finally for from global if import in is lambda not or pass print raise return try while with yield5 Báo giá ba được sử dụng để chỉ định chuỗi đa dòng. Người ta có thể sử dụng các trích dẫn đơn và trích dẫn gấp đôi trong ba trích dẫn. >>> import keyword >>> for kwd in keyword.kwlist: ... print kwd ... and as assert break class continue def del elif else except exec finally for from global if import in is lambda not or pass print raise return try while with yield6 Các chuỗi Unicode không được thảo luận trong cuốn sách này, nhưng chỉ cho thông tin rằng tiền tố của ‘U, hoặc‘ U, làm cho chuỗi trở thành một chuỗi Unicode. Mô -đun chuỗi chứa một số hằng số và hàm hữu ích cho các hoạt động dựa trên chuỗi. Ngoài ra, đối với các hàm chuỗi dựa trên các biểu thức thông thường, hãy tham khảo mô -đun lại. Cả hai mô -đun chuỗi và RE sẽ được thảo luận sau trong chương này. Các hoạt động chuỗi Một số hoạt động chuỗi được hỗ trợ bởi Python được thảo luận dưới đây. Các chuỗi nối có thể được nối bằng cách sử dụng toán tử +. >>> import keyword >>> for kwd in keyword.kwlist: ... print kwd ... and as assert break class continue def del elif else except exec finally for from global if import in is lambda not or pass print raise return try while with yield7 Hai chuỗi chữ bên cạnh nhau được kết nối tự động; Điều này chỉ hoạt động với hai chữ, không phải với các biểu thức chuỗi tùy ý. >>> import keyword >>> for kwd in keyword.kwlist: ... print kwd ... and as assert break class continue def del elif else except exec finally for from global if import in is lambda not or pass print raise return try while with yield8 Chuỗi lặp lại có thể được lặp lại với toán tử *. >>> import keyword >>> for kwd in keyword.kwlist: ... print kwd ... and as assert break class continue def del elif else except exec finally for from global if import in is lambda not or pass print raise return try while with yield9 Hoạt động thành viên như đã thảo luận trước đây, các nhà khai thác thành viên trong và không được sử dụng để kiểm tra tư cách thành viên trong một chuỗi. >>> import keyword >>> keyword.iskeyword('hi') False >>> keyword.iskeyword('print') True0 Chuỗi hoạt động cắt có thể được lập chỉ mục, ký tự đầu tiên của chuỗi có kịch bản phụ (chỉ mục) là 0. Không có loại ký tự riêng biệt; Một ký tự chỉ đơn giản là một chuỗi kích thước một. Một chuỗi phụ có thể được chỉ định với ký hiệu lát cắt. >>> import keyword >>> keyword.iskeyword('hi') False >>> keyword.iskeyword('print') True1 Cắt chuỗi có thể ở dạng các bước, thao tác S [i: j: k] cắt chuỗi s từ i đến j với bước k. >>> import keyword >>> keyword.iskeyword('hi') False >>> keyword.iskeyword('print') True2 Các chỉ số lát cắt có mặc định hữu ích, chỉ số đầu tiên bị bỏ qua mặc định về 0, một chỉ số thứ hai bị bỏ qua mặc định với kích thước của chuỗi được cắt. >>> import keyword >>> keyword.iskeyword('hi') False >>> keyword.iskeyword('print') True3 Như đã đề cập trước đó, chuỗi là bất biến, tuy nhiên, việc tạo ra một chuỗi mới với nội dung kết hợp là dễ dàng và hiệu quả. >>> import keyword >>> keyword.iskeyword('hi') False >>> keyword.iskeyword('print') True4 Nếu giới hạn trên lớn hơn chiều dài của chuỗi, thì nó được thay thế bằng kích thước chuỗi; Một giới hạn trên nhỏ hơn giới hạn dưới trả về một chuỗi trống. >>> import keyword >>> keyword.iskeyword('hi') False >>> keyword.iskeyword('print') True5 Các chỉ số có thể là số âm, cho thấy việc đếm từ phía bên phải. >>> import keyword >>> keyword.iskeyword('hi') False >>> keyword.iskeyword('print') True6 Các chỉ số lát cắt tiêu cực ngoài phạm vi bị cắt cụt, nhưng chỉ số một phần tử (không trượt) làm tăng ngoại lệ IndexError. >>> import keyword >>> keyword.iskeyword('hi') False >>> keyword.iskeyword('print') True7 Định dạng chuỗi Các đối tượng chuỗi có một toán tử tích hợp thú vị có tên là toán tử modulo (%). Điều này còn được gọi là toán tử nội suy định dạng chuỗi của chuỗi. Định dạng định dạng % giá trị (trong đó định dạng là một đối tượng chuỗi), các thông số kỹ thuật chuyển đổi % trong định dạng được thay thế bằng 0 hoặc nhiều phần tử của các giá trị. Các ký tự % đánh dấu sự khởi đầu của bộ xác định chuyển đổi. Nếu định dạng yêu cầu một đối số duy nhất, các giá trị có thể là một đối tượng không phải là một đối tượng. Mặt khác, các giá trị phải là một tuple với chính xác số lượng các mục được chỉ định bởi chuỗi định dạng hoặc một đối tượng ánh xạ duy nhất (từ điển). Nếu từ điển được cung cấp, thì khóa ánh xạ được cung cấp trong ngoặc đơn. >>> import keyword >>> keyword.iskeyword('hi') False >>> keyword.iskeyword('print') True8 Trong ví dụ trên, 03 bao gồm hai thành phần:
Bảng 2-13 cho thấy một số loại chuyển đổi. Có thể 2-13: Các loại chuyển đổi
S >>> import keyword >>> keyword.iskeyword('hi') False >>> keyword.iskeyword('print') True9 Sợi dây. >>> a=20 >>> b=45.0 >>> a+b 65.0 >>> a-b -25.0 >>> a*b 900.0 >>> b/a 2.25 >>> b%a 5.0 >>> a**b 3.5184372088832e+58 >>> b//a 2.00 Độ chính xác (tùy chọn) được đưa ra dưới dạng dấu chấm (.) Theo sau là số chính xác. Trong khi sử dụng loại chuyển đổi F, F, E hoặc E, độ chính xác xác định số lượng chữ số sau điểm thập phân và nó mặc định là 6. Mặc dù sử dụng loại chuyển đổi G hoặc G, độ chính xác xác định số lượng chữ số quan trọng trước và sau điểm thập phân và nó mặc định là 6. >>> a=20 >>> b=45.0 >>> a+b 65.0 >>> a-b -25.0 >>> a*b 900.0 >>> b/a 2.25 >>> b%a 5.0 >>> a**b 3.5184372088832e+58 >>> b//a 2.01 Chuỗi hằng số Một số hằng số được xác định trong mô -đun chuỗi như sau: >>> a=20 >>> b=45.0 >>> a+b 65.0 >>> a-b -25.0 >>> a*b 900.0 >>> b/a 2.25 >>> b%a 5.0 >>> a**b 3.5184372088832e+58 >>> b//a 2.02 String.ascii_LowerCase Nó trả về chuỗi chứa các chữ cái chữ thường ‘ABCDEFGHI JKLMNOPQRSTUVWXYZ. >>> a=20 >>> b=45.0 >>> a+b 65.0 >>> a-b -25.0 >>> a*b 900.0 >>> b/a 2.25 >>> b%a 5.0 >>> a**b 3.5184372088832e+58 >>> b//a 2.03 sợi dây. ascii__UPPERCase CNTT Chuỗi trả về Chuỗi có chữ hoa ‘ABCDefGHIJKLMNOPQRSTUVWXYZ. >>> a=20 >>> b=45.0 >>> a+b 65.0 >>> a-b -25.0 >>> a*b 900.0 >>> b/a 2.25 >>> b%a 5.0 >>> a**b 3.5184372088832e+58 >>> b//a 2.04 String.ascii_letters Nó trả về chuỗi chứa kết hợp của các hằng số ASCII_LowerCase và Ascii_uppercase. >>> a=20 >>> b=45.0 >>> a+b 65.0 >>> a-b -25.0 >>> a*b 900.0 >>> b/a 2.25 >>> b%a 5.0 >>> a**b 3.5184372088832e+58 >>> b//a 2.05 String.octdigits Nó trả về chuỗi chứa các ký tự octal ‘01234567. >>> a=20 >>> b=45.0 >>> a+b 65.0 >>> a-b -25.0 >>> a*b 900.0 >>> b/a 2.25 >>> b%a 5.0 >>> a**b 3.5184372088832e+58 >>> b//a 2.06 Chuỗi. >>> a=20 >>> b=45.0 >>> a+b 65.0 >>> a-b -25.0 >>> a*b 900.0 >>> b/a 2.25 >>> b%a 5.0 >>> a**b 3.5184372088832e+58 >>> b//a 2.07 String.Whitespace Nó trả về chuỗi chứa tất cả các ký tự được coi là khoảng trắng như không gian, tab, tab dọc, v.v. >>> a=20 >>> b=45.0 >>> a+b 65.0 >>> a-b -25.0 >>> a*b 900.0 >>> b/a 2.25 >>> b%a 5.0 >>> a**b 3.5184372088832e+58 >>> b//a 2.08 String.Printable Nó trả về chuỗi các ký tự được coi là có thể in. Đây là sự kết hợp của các chữ số, chữ cái, dấu câu và khoảng trắng. >>> a=20 >>> b=45.0 >>> a+b 65.0 >>> a-b -25.0 >>> a*b 900.0 >>> b/a 2.25 >>> b%a 5.0 >>> a**b 3.5184372088832e+58 >>> b//a 2.09 Các phương thức chuỗi dưới đây được liệt kê một số phương thức chuỗi hỗ trợ cả đối tượng chuỗi và unicode. Ngoài ra, một số hoạt động chuỗi này cũng có thể được thực hiện bằng cách sử dụng các chức năng của mô -đun chuỗi. str.alsalnum () trả về true, nếu tất cả các ký tự trong chuỗi là chữ và số, nếu không sẽ được trả về. >>> a, b=20, 40 >>> a==b False >>> a!=b True >>> a<>b True >>> a>b False >>> a>> a>=b False >>> a<=b True0 str.isalpha () trả về true, nếu tất cả các ký tự trong chuỗi là bảng chữ cái, nếu không thì sai được trả về. >>> a, b=20, 40 >>> a==b False >>> a!=b True >>> a<>b True >>> a>b False >>> a>> a>=b False >>> a<=b True1 striisDigit () trả về true, nếu tất cả các ký tự trong chuỗi là các chữ số, nếu không thì sai được trả về. >>> a, b=20, 40 >>> a==b False >>> a!=b True >>> a<>b True >>> a>b False >>> a>> a>=b False >>> a<=b True2 str.isspace () trả về true, nếu chỉ có các ký tự khoảng trắng trong chuỗi, nếu không thì sai được trả về. >>> a, b=20, 40 >>> a==b False >>> a!=b True >>> a<>b True >>> a>b False >>> a>> a>=b False >>> a<=b True3 str.islower () trả về true, nếu tất cả các ký tự vỏ trong chuỗi ở chữ thường và có ít nhất một ký tự vỏ, nếu không. >>> a, b=20, 40 >>> a==b False >>> a!=b True >>> a<>b True >>> a>b False >>> a>> a>=b False >>> a<=b True4 str.Lower () Trả về một chuỗi với tất cả các ký tự được chuyển đổi thành chữ thường. >>> a, b=20, 40 >>> a==b False >>> a!=b True >>> a<>b True >>> a>b False >>> a>> a>=b False >>> a<=b True5 Có thể được bắt chước bằng cách sử dụng chuỗi hàm mô -đun chuỗi. (s), trong đó s là một chuỗi. >>> a, b=20, 40 >>> a==b False >>> a!=b True >>> a<>b True >>> a>b False >>> a>> a>=b False >>> a<=b True6 str.isupper () trả về true, nếu tất cả các ký tự vỏ trong chuỗi là chữ hoa và có ít nhất một ký tự vỏ, nếu không thì sai được trả về. >>> a, b=20, 40 >>> a==b False >>> a!=b True >>> a<>b True >>> a>b False >>> a>> a>=b False >>> a<=b True7 str.upper () Trả về một chuỗi với tất cả các ký tự vỏ được chuyển đổi thành chữ hoa. Lưu ý rằng str. phía trên () . isupper () có thể là sai, nếu chuỗi chứa các ký tự chưa được xử lý. >>> a, b=20, 40 >>> a==b False >>> a!=b True >>> a<>b True >>> a>b False >>> a>> a>=b False >>> a<=b True8 Có thể được bắt chước bằng cách sử dụng chuỗi hàm mô -đun chuỗi. trên (s), trong đó s là một chuỗi. >>> a, b=20, 40 >>> a==b False >>> a!=b True >>> a<>b True >>> a>b False >>> a>> a>=b False >>> a<=b True9 str.capitalize () Trả về một chuỗi với ký tự đầu tiên được viết hoa và phần còn lại thấp hơn. >>> a,b=20,40 >>> c=a+b >>> c 60 >>> a,b=2.0,4.5 >>> c=a+b >>> C 6.5 >>> c+=a >>> c 8.5 >>> c-=a >>> c 6.5 >>> c*=a >>> c 13.0 >>> c/=a >>> c 6.5 >>> c%=a >>> c 0.5 >>> c**=a >>> c 0.25 >>> c//=a >>> c . 0.00 Có thể được bắt chước bằng cách sử dụng chuỗi hàm mô -đun chuỗi. Viết hoa (từ), trong đó từ là một chuỗi. >>> a,b=20,40 >>> c=a+b >>> c 60 >>> a,b=2.0,4.5 >>> c=a+b >>> C 6.5 >>> c+=a >>> c 8.5 >>> c-=a >>> c 6.5 >>> c*=a >>> c 13.0 >>> c/=a >>> c 6.5 >>> c%=a >>> c 0.5 >>> c**=a >>> c 0.25 >>> c//=a >>> c . 0.01 str.istitle () trả về true, nếu chuỗi là cased tiêu đề, nếu không thì sai được trả về. >>> a,b=20,40 >>> c=a+b >>> c 60 >>> a,b=2.0,4.5 >>> c=a+b >>> C 6.5 >>> c+=a >>> c 8.5 >>> c-=a >>> c 6.5 >>> c*=a >>> c 13.0 >>> c/=a >>> c 6.5 >>> c%=a >>> c 0.5 >>> c**=a >>> c 0.25 >>> c//=a >>> c . 0.02 str.title () Trả về một phiên bản vỏ tiêu đề của chuỗi, trong đó các từ bắt đầu bằng ký tự chữ hoa và các ký tự còn lại là chữ thường. Nó sẽ trả về kết quả bất ngờ trong trường hợp các từ có dấu nháy đơn, v.v. >>> a,b=20,40 >>> c=a+b >>> c 60 >>> a,b=2.0,4.5 >>> c=a+b >>> C 6.5 >>> c+=a >>> c 8.5 >>> c-=a >>> c 6.5 >>> c*=a >>> c 13.0 >>> c/=a >>> c 6.5 >>> c%=a >>> c 0.5 >>> c**=a >>> c 0.25 >>> c//=a >>> c . 0.03 str.swapcase () Trả về một bản sao của chuỗi với trường hợp ký tự đảo ngược. >>> a,b=20,40 >>> c=a+b >>> c 60 >>> a,b=2.0,4.5 >>> c=a+b >>> C 6.5 >>> c+=a >>> c 8.5 >>> c-=a >>> c 6.5 >>> c*=a >>> c 13.0 >>> c/=a >>> c 6.5 >>> c%=a >>> c 0.5 >>> c**=a >>> c 0.25 >>> c//=a >>> c . 0.04 Có thể được bắt chước bằng cách sử dụng chuỗi hàm mô -đun chuỗi. SWAPCASE (S), trong đó s là một chuỗi. >>> a,b=20,40 >>> c=a+b >>> c 60 >>> a,b=2.0,4.5 >>> c=a+b >>> C 6.5 >>> c+=a >>> c 8.5 >>> c-=a >>> c 6.5 >>> c*=a >>> c 13.0 >>> c/=a >>> c 6.5 >>> c%=a >>> c 0.5 >>> c**=a >>> c 0.25 >>> c//=a >>> c . 0.05 str.count (sub [, start [, end]]) Trả về số lần xuất hiện không chồng chéo của phụ chuỗi phụ trong phạm vi [bắt đầu, kết thúc]. Đối số tùy chọn bắt đầu và kết thúc được hiểu là trong ký hiệu lát cắt. >>> a,b=20,40 >>> c=a+b >>> c 60 >>> a,b=2.0,4.5 >>> c=a+b >>> C 6.5 >>> c+=a >>> c 8.5 >>> c-=a >>> c 6.5 >>> c*=a >>> c 13.0 >>> c/=a >>> c 6.5 >>> c%=a >>> c 0.5 >>> c**=a >>> c 0.25 >>> c//=a >>> c . 0.06 Có thể được bắt chước bằng cách sử dụng chuỗi hàm mô -đun chuỗi. Đếm (s, sub [, start [, end]]), trong đó s là một chuỗi. >>> a,b=20,40 >>> c=a+b >>> c 60 >>> a,b=2.0,4.5 >>> c=a+b >>> C 6.5 >>> c+=a >>> c 8.5 >>> c-=a >>> c 6.5 >>> c*=a >>> c 13.0 >>> c/=a >>> c 6.5 >>> c%=a >>> c 0.5 >>> c**=a >>> c 0.25 >>> c//=a >>> c . 0.07 str.find (sub [, start [, end]]) Trả về chỉ số thấp nhất trong chuỗi nơi tìm thấy phụ chuỗi phụ, sao cho phụ được chứa trong các lát S [start: end]. Đối số tùy chọn bắt đầu và kết thúc được hiểu là trong ký hiệu lát cắt. Trả lại -1, nếu không tìm thấy phụ. >>> a,b=20,40 >>> c=a+b >>> c 60 >>> a,b=2.0,4.5 >>> c=a+b >>> C 6.5 >>> c+=a >>> c 8.5 >>> c-=a >>> c 6.5 >>> c*=a >>> c 13.0 >>> c/=a >>> c 6.5 >>> c%=a >>> c 0.5 >>> c**=a >>> c 0.25 >>> c//=a >>> c . 0.08 Có thể bắt chước các phần trên bằng cách sử dụng Chuỗi chức năng mô -đun chuỗi, Tìm (s, sub [, start [, end]]), trong đó s là một chuỗi. >>> a,b=20,40 >>> c=a+b >>> c 60 >>> a,b=2.0,4.5 >>> c=a+b >>> C 6.5 >>> c+=a >>> c 8.5 >>> c-=a >>> c 6.5 >>> c*=a >>> c 13.0 >>> c/=a >>> c 6.5 >>> c%=a >>> c 0.5 >>> c**=a >>> c 0.25 >>> c//=a >>> c . 0.09 Phương thức Find () chỉ nên được sử dụng nếu có yêu cầu biết vị trí của phụ. Để kiểm tra xem Sub có phải là chuỗi phụ hay không, hãy sử dụng toán tử trong toán tử: >>> a,b=60,13 >>> a&b 12 >>> a|b 61 >>> a^b 49 >>> ~a -61 >>> a<<2 240 >>> a>>2 150 str.rfind (sub [, start [, end]]) Trả về chỉ số cao nhất trong chuỗi nơi tìm thấy phụ chuỗi phụ, sao cho phụ được chứa trong s [start: end]. Đối số tùy chọn bắt đầu và kết thúc được hiểu là trong ký hiệu lát cắt. Trả lại -1 khi thất bại. >>> a,b=60,13 >>> a&b 12 >>> a|b 61 >>> a^b 49 >>> ~a -61 >>> a<<2 240 >>> a>>2 151 Có thể được bắt chước bằng cách sử dụng chuỗi hàm mô -đun chuỗi. rf ind (s, sub [, start [, end]]), trong đó s là một chuỗi. >>> a,b=60,13 >>> a&b 12 >>> a|b 61 >>> a^b 49 >>> ~a -61 >>> a<<2 240 >>> a>>2 152 str.index (sub [, start [, end]]) như find (), nhưng nâng cao giá trị khi không tìm thấy chuỗi con. >>> a,b=60,13 >>> a&b 12 >>> a|b 61 >>> a^b 49 >>> ~a -61 >>> a<<2 240 >>> a>>2 153 Có thể được bắt chước bằng cách sử dụng chuỗi hàm mô -đun chuỗi. chỉ mục (s, sub [, start i [, end]]), trong đó s là một chuỗi. >>> a,b=60,13 >>> a&b 12 >>> a|b 61 >>> a^b 49 >>> ~a -61 >>> a<<2 240 >>> a>>2 154 str.rindex (sub [, start [, end]]) như rf ind (), nhưng tăng giá trịerror khi không tìm thấy sub chuỗi phụ. >>> a,b=60,13 >>> a&b 12 >>> a|b 61 >>> a^b 49 >>> ~a -61 >>> a<<2 240 >>> a>>2 155 Có thể được bắt chước bằng cách sử dụng chuỗi hàm mô -đun chuỗi. rf ind (s, sub [, start [, end]]), trong đó s là một chuỗi. >>> a,b=60,13 >>> a&b 12 >>> a|b 61 >>> a^b 49 >>> ~a -61 >>> a<<2 240 >>> a>>2 156 str.index (sub [, start [, end]]) như find (), nhưng nâng cao giá trị khi không tìm thấy chuỗi con. >>> a,b=60,13 >>> a&b 12 >>> a|b 61 >>> a^b 49 >>> ~a -61 >>> a<<2 240 >>> a>>2 157 str.endswith (hậu tố [, start [, end]]) trả về true, nếu chuỗi kết thúc bằng hậu tố được chỉ định, nếu không hãy trả về false. Hậu tố cũng có thể là một bộ hậu tố để tìm kiếm. Bài kiểm tra bắt đầu từ chỉ mục được đề cập bởi bắt đầu đối số tùy chọn. Việc so sánh được dừng được chỉ định bởi kết thúc đối số tùy chọn. >>> a,b=60,13 >>> a&b 12 >>> a|b 61 >>> a^b 49 >>> ~a -61 >>> a<<2 240 >>> a>>2 158 str.join (có thể lặp lại) trả về một chuỗi là sự kết hợp của các chuỗi trong điều đó có thể lặp lại. Dấu phân giữa các phần tử là chuỗi Str cung cấp phương pháp này. >>> a,b=60,13 >>> a&b 12 >>> a|b 61 >>> a^b 49 >>> ~a -61 >>> a<<2 240 >>> a>>2 159 Có thể được bắt chước bằng cách sử dụng chuỗi hàm mô -đun chuỗi, tham gia (Words [, sep]), trong đó các từ là danh sách hoặc tuple của chuỗi, trong khi giá trị mặc định cho SEP là một ký tự không gian. >>> a=[1,2,3] >>> b=a >>> b [1, 2, 3] >>> a[1]=10 >>> a [1, 10, 3] >>> b [1, 10,3]00 str.Replace (cũ, mới [, đếm]) Trả về một chuỗi với tất cả các lần xuất hiện của chuỗi phụ cũ được thay thế bằng mới. Nếu số lượng đối số tùy chọn được đưa ra, chỉ có các lần xuất hiện đầu tiên được thay thế. >>> a=[1,2,3] >>> b=a >>> b [1, 2, 3] >>> a[1]=10 >>> a [1, 10, 3] >>> b [1, 10,3]01 Có thể được bắt chước bằng cách sử dụng chuỗi hàm mô -đun chuỗi, thay thế (s, cũ, mới [, maxreplace]), trong đó s là chuỗi và maxreplace giống như đếm (đã thảo luận ở trên). >>> a=[1,2,3] >>> b=a >>> b [1, 2, 3] >>> a[1]=10 >>> a [1, 10, 3] >>> b [1, 10,3]02 str.Center (chiều rộng [, fillchar]) Chuỗi trung tâm có chiều rộng có chiều dài. Đệm được thực hiện bằng cách sử dụng đối số tùy chọn f illchar (mặc định là một không gian). >>> a=[1,2,3] >>> b=a >>> b [1, 2, 3] >>> a[1]=10 >>> a [1, 10, 3] >>> b [1, 10,3]03 Những điều trên có thể được bắt chước bằng cách sử dụng chức năng mô -đun chuỗi. tâm (s, chiều rộng [, f illchar]), trong đó s là một chuỗi. >>> a=[1,2,3] >>> b=a >>> b [1, 2, 3] >>> a[1]=10 >>> a [1, 10, 3] >>> b [1, 10,3]04 str.ljust (chiều rộng), fillchar]) trả về chuỗi còn lại hợp lý trong một chuỗi chiều rộng. Đệm được thực hiện bằng cách sử dụng fillbar đối số tùy chọn (mặc định là một không gian). Chuỗi ban đầu được trả về nếu chiều rộng nhỏ hơn hoặc bằng LEN (STR). >>> a=[1,2,3] >>> b=a >>> b [1, 2, 3] >>> a[1]=10 >>> a [1, 10, 3] >>> b [1, 10,3]05 Có thể được bắt chước bằng cách sử dụng chuỗi hàm mô -đun chuỗi. 1 chỉ (s, chiều rộng [, f illchar]), trong đó s là một chuỗi. >>> a=[1,2,3] >>> b=a >>> b [1, 2, 3] >>> a[1]=10 >>> a [1, 10, 3] >>> b [1, 10,3]06 str.rjust (chiều rộng [, fillchar]) Trả về chuỗi chính đáng có chiều rộng. Đệm được thực hiện bằng cách sử dụng fillbar đối số tùy chọn (mặc định là một không gian). Chuỗi ban đầu được trả về nếu chiều rộng nhỏ hơn hoặc bằng LEN (STR). >>> a=[1,2,3] >>> b=a >>> b [1, 2, 3] >>> a[1]=10 >>> a [1, 10, 3] >>> b [1, 10,3]07 Có thể được bắt chước bằng cách sử dụng Chuỗi mô -đun Chuỗi Chuỗi.R chỉ (s, chiều rộng [, fillchar]), trong đó s là một chuỗi. >>> a=[1,2,3] >>> b=a >>> b [1, 2, 3] >>> a[1]=10 >>> a [1, 10, 3] >>> b [1, 10,3]08 str.zfill (chiều rộng) Trả về một chuỗi có chiều rộng, có số không dẫn đầu. Chuỗi ban đầu được trả về, nếu chiều rộng nhỏ hơn hoặc bằng Len (str). >>> a=[1,2,3] >>> b=a >>> b [1, 2, 3] >>> a[1]=10 >>> a [1, 10, 3] >>> b [1, 10,3]09 Có thể được bắt chước bằng cách sử dụng chuỗi hàm mô -đun chuỗi. zfill (s, chiều rộng), trong đó s là một chuỗi. >>> a=[1,2,3] >>> b=a >>> b [1, 2, 3] >>> a[1]=10 >>> a [1, 10, 3] >>> b [1, 10,3]10 Trả về một chuỗi với các ký tự hàng đầu và dấu vết đã bị xóa. Đối số ký tự là một chuỗi chỉ định tập hợp các ký tự sẽ được xóa. Nếu bị bỏ qua hoặc không có, đối số ký tự mặc định sẽ loại bỏ khoảng trắng. >>> a=[1,2,3] >>> b=a >>> b [1, 2, 3] >>> a[1]=10 >>> a [1, 10, 3] >>> b [1, 10,3]11 Có thể được bắt chước bằng cách sử dụng chuỗi hàm mô -đun chuỗi. Dải (s [, chars]), trong đó s là một chuỗi. >>> a=[1,2,3] >>> b=a >>> b [1, 2, 3] >>> a[1]=10 >>> a [1, 10, 3] >>> b [1, 10,3]12 str.lstrip ([chars]) trả về một chuỗi với các ký tự hàng đầu bị xóa. Đối số ký tự là một chuỗi chỉ định tập hợp các ký tự sẽ được xóa. Nếu bị bỏ qua hoặc không có, đối số ký tự mặc định sẽ loại bỏ khoảng trắng. >>> a=[1,2,3] >>> b=a >>> b [1, 2, 3] >>> a[1]=10 >>> a [1, 10, 3] >>> b [1, 10,3]13 Có thể được bắt chước bằng cách sử dụng chuỗi hàm mô -đun chuỗi. lstrip (s [, chars]), trong đó s là một chuỗi. >>> a=[1,2,3] >>> b=a >>> b [1, 2, 3] >>> a[1]=10 >>> a [1, 10, 3] >>> b [1, 10,3]14 str.rstrip ([chars]) trả về một chuỗi với các ký tự dấu vết bị xóa. Đối số ký tự là một chuỗi chỉ định tập hợp các ký tự sẽ được xóa. Nếu bị bỏ qua hoặc không có, đối số ký tự mặc định sẽ loại bỏ khoảng trắng. >>> a=[1,2,3] >>> b=a >>> b [1, 2, 3] >>> a[1]=10 >>> a [1, 10, 3] >>> b [1, 10,3]15 Có thể được bắt chước bằng cách sử dụng chuỗi hàm mô -đun chuỗi. rstrip (s [, chars]), trong đó s là một chuỗi. >>> a=[1,2,3] >>> b=a >>> b [1, 2, 3] >>> a[1]=10 >>> a [1, 10, 3] >>> b [1, 10,3]16 Str.Partition (SEP) Chia chuỗi ở lần xuất hiện đầu tiên của SEP và trả về một tuple chứa phần trước dấu phân cách, chính bộ phân cách và phần sau khi phân tách. >>> a=[1,2,3] >>> b=a >>> b [1, 2, 3] >>> a[1]=10 >>> a [1, 10, 3] >>> b [1, 10,3]17 Str.Rpartition (SEP) Chia chuỗi ở lần xuất hiện cuối cùng của SEP và trả về một tuple chứa phần trước khi phân tách, chính bộ phân cách và phần sau khi phân tách. >>> a=[1,2,3] >>> b=a >>> b [1, 2, 3] >>> a[1]=10 >>> a [1, 10, 3] >>> b [1, 10,3]18 Str.Split ([SEP [, MaxSplit]]) trả về danh sách các từ từ chuỗi bằng cách sử dụng SEP làm chuỗi DELIMITER. Nếu MAXSplit được đưa ra, tại hầu hết các phân tách MaxSplit được thực hiện (do đó, danh sách sẽ có hầu hết các phần tử MaxSplit+1). Nếu MaxSplit không được chỉ định hoặc -1, thì tất cả các phân tách có thể được thực hiện. Nếu SEP không được chỉ định hoặc không có, bất kỳ chuỗi khoảng trắng nào là một dấu phân cách. >>> a=[1,2,3] >>> b=a >>> b [1, 2, 3] >>> a[1]=10 >>> a [1, 10, 3] >>> b [1, 10,3]19 Có thể được bắt chước bằng cách sử dụng chuỗi hàm mô -đun chuỗi. chia (s [, sep [, maxsplit]]), trong đó s là một chuỗi. >>> a=[1,2,3] >>> b=a >>> b [1, 2, 3] >>> a[1]=10 >>> a [1, 10, 3] >>> b [1, 10,3]20 str.rsplit ([SEP [, MaxSplit]]) trả về danh sách các từ từ chuỗi bằng cách sử dụng SEP làm chuỗi DELIMITER. Nếu MAXSplit được đưa ra, tại hầu hết các phân tách MaxSplit được thực hiện, những cái ngoài cùng bên phải. Nếu SEP không được chỉ định hoặc không có, bất kỳ chuỗi khoảng trắng nào là một dấu phân cách. Ngoại trừ việc phân tách từ bên phải, rsplit () hoạt động như Split () được mô tả chi tiết dưới đây. >>> a=[1,2,3] >>> b=a >>> b [1, 2, 3] >>> a[1]=10 >>> a [1, 10, 3] >>> b [1, 10,3]21 Có thể được bắt chước bằng cách sử dụng chuỗi hàm mô -đun chuỗi. rsplit (s [, sep [, maxsplit]]), trong đó s là một chuỗi. >>> a=[1,2,3] >>> b=a >>> b [1, 2, 3] >>> a[1]=10 >>> a [1, 10, 3] >>> b [1, 10,3]22 Str.SplitLines ([Keepends]) Trả về một danh sách các dòng trong chuỗi, phá vỡ các ranh giới dòng. Phá vỡ dòng không được bao gồm trong danh sách kết quả trừ khi Keepends được đưa ra. >>> a=[1,2,3] >>> b=a >>> b [1, 2, 3] >>> a[1]=10 >>> a [1, 10, 3] >>> b [1, 10,3]23 str.translate (bảng [, deletechars]) Trả về một chuỗi có tất cả các ký tự xảy ra trong đối số tùy chọn Deletechar được xóa và các ký tự còn lại đã được ánh xạ qua bảng dịch đã cho, phải là một chuỗi có độ dài 256. Hàm Maketranso (thảo luận sau trong phần này) Từ mô -đun chuỗi được sử dụng để tạo bảng dịch. Đối với các đối tượng chuỗi, đặt đối số bảng thành không có bản dịch mà chỉ xóa các ký tự. >>> a=[1,2,3] >>> b=a >>> b [1, 2, 3] >>> a[1]=10 >>> a [1, 10, 3] >>> b [1, 10,3]24 Có thể được bắt chước bằng cách sử dụng chuỗi hàm mô -đun chuỗi. dịch (s, bảng [, deletechars]), trong đó s là một chuỗi. >>> a=[1,2,3] >>> b=a >>> b [1, 2, 3] >>> a[1]=10 >>> a [1, 10, 3] >>> b [1, 10,3]25 Các chức năng sau đây có trong mô -đun chuỗi, nhưng không có sẵn như các phương thức chuỗi. sợi dây. capwords (s [, sep]) chia đối số s thành các từ bằng str. Split (), sau đó viết hoa mỗi từ bằng str. Viết hoa (), và tham gia các từ viết hoa bằng cách sử dụng str. tham gia (). Nếu đối số thứ hai tùy chọn không có hoặc không có, các ký tự khoảng trắng được thay thế bằng một không gian duy nhất và khoảng trắng dẫn đầu và dấu vết được gỡ bỏ, nếu không, SEP được sử dụng để chia và tham gia các từ. >>> a=[1,2,3] >>> b=a >>> b [1, 2, 3] >>> a[1]=10 >>> a [1, 10, 3] >>> b [1, 10,3]26 String.maketrans (từ, đến) trả về một bảng dịch phù hợp để chuyển sang dịch (), sẽ ánh xạ từng ký tự từ vào ký tự ở cùng một vị trí trong, từ và phải có cùng độ dài. >>> a=[1,2,3] >>> b=a >>> b [1, 2, 3] >>> a[1]=10 >>> a [1, 10, 3] >>> b [1, 10,3]27 Mô -đun biểu thức thông thường Biểu thức chính quy (còn được gọi là RE hoặc Regex hoặc mẫu Regex) là một cách tiếp cận chuyên dụng trong Python, sử dụng mà lập trình viên có thể chỉ định các quy tắc cho tập hợp các chuỗi có thể cần được khớp; Bộ này có thể chứa các câu tiếng Anh, địa chỉ e-mail hoặc bất cứ điều gì. RES cũng có thể được sử dụng để sửa đổi một chuỗi hoặc để tách nó ra theo nhiều cách khác nhau. Các ký tự meta Hầu hết các chữ cái và ký tự sẽ chỉ đơn giản là tự phù hợp. Ví dụ, kiểm tra biểu thức chính xác sẽ khớp chính xác với kiểm tra chuỗi. Có những trường hợp ngoại lệ cho quy tắc này; Một số nhân vật là những nhân vật đặc biệt của người Viking, và không phù hợp với chính họ. Thay vào đó, họ báo hiệu rằng một số điều ngoài tầm thường nên được khớp hoặc chúng ảnh hưởng đến các phần khác của RE bằng cách lặp lại chúng hoặc thay đổi ý nghĩa của chúng. Một số ký tự meta được thảo luận dưới đây: Bảng 2-14: ký tự meta
Mô -đun biểu thức chính quy chức năng Một số phương pháp của mô -đun lại như được thảo luận dưới đây: re.compile (mẫu) Hàm biên dịch một mẫu biểu thức chính quy thành một đối tượng biểu thức chính quy, có thể được sử dụng để khớp bằng các phương thức khớp () và search () của nó, được thảo luận dưới đây. >>> a=[1,2,3] >>> b=a >>> b [1, 2, 3] >>> a[1]=10 >>> a [1, 10, 3] >>> b [1, 10,3]28 Re.Match (mẫu, chuỗi) Nếu số 0 hoặc nhiều ký tự ở đầu chuỗi khớp với mẫu biểu thức chính quy, match () trả về một thể hiện matchObject tương ứng. Hàm không trả về không, nếu chuỗi không khớp với mẫu. re.group () hàm trả về chuỗi khớp với re. >>> a=[1,2,3] >>> b=a >>> b [1, 2, 3] >>> a[1]=10 >>> a [1, 10, 3] >>> b [1, 10,3]29 Bản vá mã trên cũng có thể được viết là: >>> a=[1,2,3] >>> b=a >>> b [1, 2, 3] >>> a[1]=10 >>> a [1, 10, 3] >>> b [1, 10,3]30 Re.Search (mẫu, chuỗi) Hàm quét qua chuỗi Tìm kiếm một vị trí nơi mẫu biểu thức chính quy tạo ra một khớp và trả về một thể hiện matchObject tương ứng. Hàm không trả về không, nếu không có vị trí trong chuỗi khớp với mẫu. >>> a=[1,2,3] >>> b=a >>> b [1, 2, 3] >>> a[1]=10 >>> a [1, 10, 3] >>> b [1, 10,3]31 Bản vá mã trên cũng có thể được viết là: >>> a=[1,2,3] >>> b=a >>> b [1, 2, 3] >>> a[1]=10 >>> a [1, 10, 3] >>> b [1, 10,3]32 Re.start () Hàm trả về vị trí bắt đầu của trận đấu. Re.end () Hàm trả về vị trí cuối của trận đấu. Re.span () Hàm trả về một tuple chứa các chỉ mục (bắt đầu, kết thúc) của trận đấu. >>> a=[1,2,3] >>> b=a >>> b [1, 2, 3] >>> a[1]=10 >>> a [1, 10, 3] >>> b [1, 10,3]33 Bản vá mã trên cũng có thể được viết là: >>> a=[1,2,3] >>> b=a >>> b [1, 2, 3] >>> a[1]=10 >>> a [1, 10, 3] >>> b [1, 10,3]34 Re.Findall (Mẫu, Chuỗi) Hàm trả về tất cả các trận đấu không chồng chéo của mẫu trong chuỗi, như một danh sách các chuỗi. Chuỗi được quét từ trái sang phải và các trận đấu được trả về theo thứ tự được tìm thấy. >>> a=[1,2,3] >>> b=a >>> b [1, 2, 3] >>> a[1]=10 >>> a [1, 10, 3] >>> b [1, 10,3]35 Bản vá mã trên cũng có thể được viết là: >>> a=[1,2,3] >>> b=a >>> b [1, 2, 3] >>> a[1]=10 >>> a [1, 10, 3] >>> b [1, 10,3]36 Re.Finditer (mẫu, chuỗi) Hàm trả về một trình lặp mang lại các phiên bản khớp trên tất cả các kết quả không chồng chéo cho mẫu RE trong chuỗi. Chuỗi được quét từ trái sang phải và các trận đấu được trả về theo thứ tự được tìm thấy. >>> a=[1,2,3] >>> b=a >>> b [1, 2, 3] >>> a[1]=10 >>> a [1, 10, 3] >>> b [1, 10,3]37 Bản vá mã trên cũng có thể được viết là: >>> a=[1,2,3] >>> b=a >>> b [1, 2, 3] >>> a[1]=10 >>> a [1, 10, 3] >>> b [1, 10,3]38 Lỗi Lỗi (hoặc lỗi phần mềm) là lỗi trong chương trình máy tính tạo ra kết quả không chính xác hoặc bất ngờ hoặc khiến nó hoạt động theo những cách không lường trước được. Chủ yếu là lỗi phát sinh từ các sai lầm và lỗi của mọi người trong mã nguồn chương trình hoặc thiết kế của nó. Thông thường, lỗi được phân loại là: lỗi cú pháp, lỗi thời gian chạy và lỗi logic. Lỗi Syntax Lỗi Syntax đề cập đến một lỗi trong cú pháp của mã thông báo và/hoặc chuỗi các mã thông báo được dự định viết bằng một ngôn ngữ lập trình cụ thể. Đối với các ngôn ngữ được biên dịch, lỗi cú pháp xảy ra nghiêm ngặt tại thời gian biên dịch. Một chương trình sẽ không biên dịch cho đến khi tất cả các lỗi cú pháp được sửa chữa. Tuy nhiên, đối với các ngôn ngữ được giải thích, không phải tất cả các lỗi cú pháp đều có thể được phát hiện một cách đáng tin cậy cho đến khi chạy. >>> a=[1,2,3] >>> b=a >>> b [1, 2, 3] >>> a[1]=10 >>> a [1, 10, 3] >>> b [1, 10,3]39 Lỗi thời gian chạy Lỗi chạy là lỗi có thể được phát hiện trong quá trình thực hiện chương trình. Mã dường như là chính xác (nó không có lỗi cú pháp), nhưng nó sẽ không thực thi. Ví dụ: nếu một lập trình viên đã viết một mã chính xác để mở một tệp bằng hàm Open () và nếu tệp bị hỏng, ứng dụng không thể thực hiện chức năng thực thi Open () và nó ngừng chạy. Lỗi logic Lỗi logic (hoặc lỗi ngữ nghĩa) là một lỗi trong chương trình khiến nó hoạt động không chính xác, nhưng không chấm dứt bất thường. Một lỗi logic tạo ra đầu ra ngoài ý muốn hoặc không mong muốn hoặc hành vi khác, mặc dù nó có thể không được nhận ra ngay lập tức. Lỗi logic xảy ra cả trong các ngôn ngữ được biên dịch và giải thích. Không giống như một chương trình có lỗi cú pháp, một chương trình có lỗi logic là một chương trình hợp lệ trong ngôn ngữ, mặc dù nó không hoạt động như dự định. Manh mối duy nhất cho sự tồn tại của các lỗi logic là sản xuất các giải pháp sai. Ví dụ: nếu một chương trình tính toán trung bình của các biến A và B, thay vì viết biểu thức C = (A+B) /2, người ta có thể viết C = A+B /2, là lỗi logic. >>> a=[1,2,3] >>> b=a >>> b [1, 2, 3] >>> a[1]=10 >>> a [1, 10, 3] >>> b [1, 10,3]40 Khoa học cơ bản lập trình Python Các mã thông báo trong Python là gì?Mã thông báo là đơn vị cá nhân nhỏ nhất trong chương trình Python.Tất cả các tuyên bố và hướng dẫn trong một chương trình được xây dựng bằng mã thông báo.the smallest individual unit in a python program. All statements and instructions in a program are built with tokens.
Mã thông báo trong Python đưa ra ví dụ là gì?Mã thông báo.Python chia từng dòng logic thành một chuỗi các thành phần từ vựng cơ bản được gọi là mã thông báo.Mỗi mã thông báo tương ứng với một chuỗi con của dòng logic.Các loại mã thông báo bình thường là số nhận dạng, từ khóa, toán tử, phân định và nghĩa đen, như được đề cập trong các phần sau.Python breaks each logical line into a sequence of elementary lexical components known as tokens. Each token corresponds to a substring of the logical line. The normal token types are identifiers, keywords, operators, delimiters, and literals, as covered in the following sections.
5 mã thông báo trong Python là gì?Bên cạnh dòng mới, thụt lề và cống hiến, các loại mã thông báo sau đây tồn tại: định danh, từ khóa, nghĩa đen, người vận hành và phân định.identifiers, keywords, literals, operators, and delimiters.
Các nhà khai thác trong Python Class 11 là gì?Toán tử Python là gì?Toán tử Python là một biểu tượng thực hiện thao tác trên một hoặc nhiều toán hạng.Một toán hạng là một biến hoặc một giá trị mà chúng tôi thực hiện thao tác.a symbol that performs an operation on one or more operands. An operand is a variable or a value on which we perform the operation. |