Nhóm này chịu trách nhiệm về nhiều loại dịch vụ chuỗi có sẵn. Các mô-đun này cung cấp quyền truy cập vào một số loại hoạt động thao tác chuỗi
Lưu ý rằng kể từ khi phát hành 2. 0, tất cả các hàm này được gắn trực tiếp với các đối tượng chuỗi, dưới dạng các phương thức. Mô-đun chuỗi vẫn chỉ xuất hiện để tương thích ngược
chuỗi
Mô-đun chuỗi hỗ trợ các hoạt động chuỗi phổ biến bằng cách cung cấp một số hàm và hằng số thao tác chuỗi Python
chuỗi. tách ra[]
Hàm này tách một chuỗi thành một danh sách. Nếu dấu phân cách bị bỏ qua, khoảng trắng được sử dụng
cú pháp cơ bản. chuỗi. tách [chuỗi [, dấu phân cách]]
>>> print string,split["a b c"] ["a","b","c"]
chuỗi. atof[]
Nó chuyển đổi một chuỗi thành một số nổi
cú pháp cơ bản. chuỗi. atof[chuỗi]
chuỗi. atoi[]
Nó chuyển đổi một chuỗi thành một số nguyên. atoi nhận một đối số thứ hai tùy chọn. căn cứ. Nếu bị bỏ qua, phần đầu của chuỗi [ví dụ: 0x cho hệ thập lục phân] được sử dụng để xác định cơ số
cú pháp cơ bản. chuỗi. atoi[chuỗi[, cơ số]]
chuỗi. đảo san hô []
Nó chuyển đổi một chuỗi thành một số nguyên dài. atol nhận một đối số thứ hai tùy chọn. căn cứ. Nếu bị bỏ qua, phần đầu của chuỗi [ví dụ: 0x cho hệ thập lục phân] được sử dụng để xác định cú pháp cơ bản. chuỗi. atol [chuỗi [, cơ sở]]
chuỗi. phía trên[]
Nó chuyển đổi một chuỗi thành chữ hoa
cú pháp cơ bản. chuỗi. trên [chuỗi]
chuỗi. tìm thấy[]
Nó trả về vị trí chỉ mục của chuỗi con trong chuỗi. Theo tùy chọn, bạn có thể chỉ định phạm vi của chuỗi sẽ được sử dụng trong tìm kiếm
cú pháp cơ bản. chuỗi. tìm [chuỗi, chuỗi con [, bắt đầu [, kết thúc]]]
chuỗi. tham gia[]
Hàm này kết hợp các phần tử chuỗi của danh sách bằng dấu phân cách để tách chúng
cú pháp cơ bản. chuỗi. tham gia [danh sách, dấu phân cách]
chuỗi. viết hoa[]
Nó viết hoa ký tự đầu tiên của chuỗi
cú pháp cơ bản. chuỗi. viết hoa [chuỗi]
chuỗi. capwords[]
Hàm này viết hoa chữ cái đầu tiên của mỗi từ trong chuỗi và loại bỏ khoảng trắng lặp lại, đầu và cuối
cú pháp cơ bản. chuỗi. capwords[chuỗi]
chuỗi. thấp hơn[]
Nó chuyển đổi tất cả các ký tự trong chuỗi thành chữ thường
cú pháp cơ bản. chuỗi. thấp hơn [chuỗi]
chuỗi. lstrip[],chuỗi. rstrip[] và chuỗi. dải[]
Các hàm này loại bỏ khoảng trắng ở đầu và/hoặc ở cuối chuỗi
cú pháp cơ bản
string.lstrip[string] string.rstrip[string] string.strip[string]
chuỗi. ljust[],chuỗi. rjust[] và chuỗi. trung tâm[]
Các hàm này xác định căn chỉnh của chuỗi trong một biến ký tự chiều rộng
cú pháp cơ bản
string.ljust[string, width] string.rjust[string, width] string.center[string, width]
chuỗi. thay thế[]
Nó thay thế số lần xuất hiện tối đa của văn bản cũ bằng văn bản mới trong chuỗi. Nếu tối đa bị bỏ qua, tất cả các lần xuất hiện được thay thế
cú pháp cơ bản. chuỗi. thay thế [chuỗi, văn bản cũ, văn bản mới [, tối đa]]
chuỗi. zfill[]
Nó chèn các số 0 vào bên trái của một chuỗi có ký tự chiều rộng
cú pháp cơ bản. chuỗi. zfill[chuỗi, chiều rộng]
Tiếp theo, tôi liệt kê một vài hằng số có thể được sử dụng để kiểm tra xem một biến nhất định có phải là một phần của một miền cụ thể hay không
>>> import string >>> string.digits "0123456789" >>> string.octdigits "01234567" >>> string.uppercase "ABCDEFGHIJKLMNOPQRSTUVWXY" >>> string.hexdigits "0123456789abcdefABCDEF" >>> string.lowercase "abcdefghijklmnopqrstuvwxy"
Hãy viết một ví dụ sử dụng chuỗi. chữ hoa
>>> text = "F" >>> if text in string.uppercase: .. print "%s is in uppercase format" % text ... "F is in uppercase format"
chuỗi. maketrans[]
Trả về một bảng dịch ánh xạ từng ký tự trong chuỗi từ thành ký tự ở cùng vị trí trong chuỗi tới. Sau đó, bảng này được chuyển đến chức năng dịch. Lưu ý rằng cả từ và đến phải có cùng độ dài
cú pháp cơ bản. chuỗi. maketrans [từ, đến]
chuỗi. Phiên dịch[]
Dựa vào bảng đã cho thay hết các kí tự đã thông, theo bảng tạo bởi xâu. chức năng maketrans. Theo tùy chọn, nó xóa khỏi chuỗi đã cho tất cả các ký tự được trình bày trong charstodelete
cú pháp cơ bản. chuỗi. dịch [chuỗi, bảng [, ký tự xóa]]
lại
Mô-đun re thực hiện các thao tác biểu thức chính quy kiểu Perl trong chuỗi, chẳng hạn như so khớp và thay thế
TIỀN BOA
Theo gợi ý, hãy luôn sử dụng cú pháp chuỗi thô khi làm việc với biểu thức chính quy vì nó giúp công việc xử lý các ký tự đặc biệt trở nên đơn giản hơn
>>> import re >>> data = r"Andre Lessa" >>> data = re.sub["Lessa", "L.", data] >>> print data Andre L.
Xem Chương 9, "Các chủ đề nâng cao khác" để biết thêm chi tiết về cách tạo các mẫu biểu thức chính quy
GHI CHÚ
Dự kiến trong phiên bản 1. 6, mô-đun re sẽ được thay đổi thành giao diện người dùng thành mô-đun sre mới
biểu thức chính quy
Mô-đun regex là một mô-đun lỗi thời kể từ phiên bản Python 1. 5. Mô-đun này được sử dụng để hỗ trợ các hoạt động tìm kiếm và so khớp biểu thức chính quy
Nếu cần, bạn có thể sử dụng HOWTO regex-to-re để tìm hiểu cách di chuyển từ mô-đun regex sang mô-đun re. Kiểm tra địa chỉ http. //py-howto. nguồn. net/regex-to-re/
đăng ký lại
Mô-đun regsub là một mô-đun lỗi thời khác. Nó cũng xử lý các hoạt động chuỗi [chẳng hạn như thay thế và tách] bằng cách sử dụng các biểu thức thông thường. Các chức năng trong mô-đun này không an toàn cho luồng, vì vậy hãy cẩn thận
cấu trúc
Mô-đun cấu trúc diễn giải các chuỗi dưới dạng dữ liệu nhị phân được đóng gói. Nó xử lý các tệp nhị phân bằng cách sử dụng các hàm pack[],unpack[] và calcsize[]. Mô-đun này cho phép người dùng viết mã thao tác tệp nhị phân, độc lập với nền tảng khi sử dụng các ký tự định dạng big-endian hoặc little-endian. Sử dụng các định dạng gốc không đảm bảo tính độc lập của nền tảng
fpformat
Mô-đun fpformat cung cấp các chức năng xử lý các số dấu chấm động và chuyển đổi
chuỗiIO
Mô-đun StringIO tạo một đối tượng chuỗi hoạt động giống như một tệp, nhưng trên thực tế, nó đọc và ghi dữ liệu từ bộ đệm chuỗi. Lớp StringIO, được hiển thị bởi mô-đun StringIO hỗ trợ tất cả các phương thức tệp tiêu chuẩn
>>> import StringIO >>> str = StringIO.StringIO["Line 1\nLine 2\nLine 3"] >>> str.readlines[] ['Line1\012', 'Line2\012', 'Line3']
Một phương thức bổ sung được cung cấp bởi lớp này là StringIO. nhận giá trị[]
Nó trả về và đóng đối tượng chuỗi
cú pháp cơ bản. biến = stringobject. nhận giá trị[]
>>> import StringIO >>> text = "Line 1\nLine 2\nLine 3" >>> str = StringIO.StringIO[] >>> str.write[text] >>> result = str.getvalue[] "Line 1\012Line 2\012Line 3"
cStringIO
cStringIO là phiên bản nhanh hơn của mô-đun StringIO. Sự khác biệt là bạn không thể phân lớp mô-đun này. Cần sử dụng StringIO thay thế