string

Báo cáo vấn đề Xem nguồn Nightly · 8.0 7.4 . 7.3 · 7.2 · 7.1 · 7.0 · 6.5

Loại ngôn ngữ tích hợp để hỗ trợ chuỗi. Ví dụ về chuỗi cố định:

a = 'abc\ndef'
b = "ab'cd"
c = """multiline string"""

# Strings support slicing (negative index starts from the end):
x = "hello"[2:4]  # "ll"
y = "hello"[1:-1]  # "ell"
z = "hello"[:4]  # "hell"
# Slice steps can be used, too:
s = "hello"[::2] # "hlo"
t = "hello"[3:0:-1] # "lle"
Chuỗi không thể lặp lại trực tiếp, hãy sử dụng phương thức .elems() để lặp lại các ký tự của chuỗi. Ví dụ:
"bc" in "abcd"   # evaluates to True
x = [c for c in "abc".elems()]  # x == ["a", "b", "c"]
Không cho phép nối chuỗi ngầm ẩn; hãy sử dụng toán tử +. Toán tử so sánh thực hiện so sánh theo thứ tự bảng chữ cái; sử dụng == để kiểm tra xem có bằng nhau hay không.

Hội viên

viết hoa

string string.capitalize()

Trả về một bản sao của chuỗi có ký tự đầu tiên (nếu có) được viết hoa và các ký tự còn lại được viết thường. Phương thức này không hỗ trợ các ký tự không phải ascii.

số lượng

int string.count(sub, start=0, end=None)

Trả về số lần xuất hiện (không trùng lặp) của chuỗi con sub trong chuỗi, có thể hạn chế ở [start:end], start bao gồm và end loại trừ.

Tham số

Thông số Mô tả
sub string; bắt buộc
Chuỗi con cần đếm.
start int; hoặc None; mặc định là 0
Chỉ tìm kiếm từ vị trí này.
end int; hoặc None; giá trị mặc định là None
vị trí không bắt buộc trước khi hạn chế tìm kiếm.

elems

sequence string.elems()

Trả về một giá trị có thể lặp lại chứa các chuỗi con gồm 1 phần tử liên tiếp của chuỗi. Tương đương với [s[i] for i in range(len(s))], ngoại trừ việc giá trị được trả về có thể không phải là danh sách.

endswith

bool string.endswith(sub, start=0, end=None)

Trả về True nếu chuỗi kết thúc bằng sub, nếu không thì trả về False, có thể hạn chế ở [start:end], start bao gồm và end không bao gồm.

Tham số

Thông số Mô tả
sub chuỗi; hoặc bộ dữ liệu gồm các chuỗi; bắt buộc
Hậu tố (hoặc bộ dữ liệu gồm các hậu tố thay thế) cần so khớp.
start int; hoặc None; mặc định là 0
Kiểm thử bắt đầu tại vị trí này.
end int; hoặc None; giá trị mặc định là None
vị trí không bắt buộc để dừng so sánh.

tìm

int string.find(sub, start=0, end=None)

Trả về chỉ mục đầu tiên tìm thấy sub hoặc -1 nếu không có chỉ mục nào như vậy, có thể hạn chế ở [start:end], start bao gồm và end không bao gồm.

Tham số

Thông số Mô tả
sub string; bắt buộc
Chuỗi con cần tìm.
start int; hoặc None; mặc định là 0
Chỉ tìm kiếm từ vị trí này.
end int; hoặc None; giá trị mặc định là None
vị trí không bắt buộc trước khi hạn chế tìm kiếm.

định dạng

string string.format(*args, **kwargs)

Thực hiện nội suy chuỗi. Chuỗi định dạng chứa các trường thay thế được bao quanh bằng dấu ngoặc nhọn {}. Mọi nội dung không nằm trong dấu ngoặc nhọn đều được coi là văn bản cố định, được sao chép nguyên trạng vào kết quả.Nếu bạn cần đưa ký tự dấu ngoặc nhọn vào văn bản cố định, bạn có thể thoát ký tự đó bằng cách nhân đôi: {{}}Trường thay thế có thể là tên, số hoặc trống. Các giá trị được chuyển đổi thành chuỗi bằng hàm str.
# Access in order:
"{} < {}".format(4, 5) == "4 < 5"
# Access by position:
"{1}, {0}".format(2, 1) == "1, 2"
# Access by name:
"x{key}x".format(key = 2) == "x2x"

Tham số

Thông số Mô tả
args mặc định là ()
Danh sách đối số.
kwargs mặc định là {}
Từ điển đối số.

index

int string.index(sub, start=0, end=None)

Trả về chỉ mục đầu tiên tìm thấy sub hoặc báo lỗi nếu không có chỉ mục nào như vậy, có thể hạn chế [start:end]start bao gồm và end loại trừ.

Tham số

Thông số Mô tả
sub string; bắt buộc
Chuỗi con cần tìm.
start int; hoặc None; mặc định là 0
Chỉ tìm kiếm từ vị trí này.
end int; hoặc None; giá trị mặc định là None
vị trí không bắt buộc trước khi hạn chế tìm kiếm.

isalnum

bool string.isalnum()

Trả về True nếu tất cả ký tự trong chuỗi đều là chữ-số ([a-zA-Z0-9]) và có ít nhất một ký tự.

isalpha

bool string.isalpha()

Trả về True nếu tất cả ký tự trong chuỗi đều là ký tự chữ cái ([a-zA-Z]) và có ít nhất một ký tự.

isdigit

bool string.isdigit()

Trả về True nếu tất cả ký tự trong chuỗi đều là chữ số ([0-9]) và có ít nhất một ký tự.

islower

bool string.islower()

Trả về True nếu tất cả ký tự viết hoa trong chuỗi đều là chữ thường và có ít nhất một ký tự.

isspace

bool string.isspace()

Trả về True nếu tất cả ký tự đều là ký tự khoảng trắng và chuỗi chứa ít nhất một ký tự.

istitle

bool string.istitle()

Trả về True nếu chuỗi ở dạng viết hoa đầu tiên và chứa ít nhất một ký tự. Điều này có nghĩa là mọi ký tự viết hoa phải theo sau một ký tự không phân biệt chữ hoa chữ thường (ví dụ: khoảng trắng) và mọi ký tự viết thường phải theo sau một ký tự phân biệt chữ hoa chữ thường (ví dụ: viết hoa hoặc viết thường).

isupper

bool string.isupper()

Trả về True nếu tất cả ký tự viết hoa trong chuỗi đều viết hoa và có ít nhất một ký tự.

kết hợp

string string.join(elements)

Trả về một chuỗi trong đó các phần tử chuỗi của đối số đã được nối với nhau bằng chuỗi này làm dấu phân cách. Ví dụ:
"|".join(["a", "b", "c"]) == "a|b|c"

Tham số

Thông số Mô tả
elements bắt buộc
Các đối tượng cần kết hợp.

thấp hơn

string string.lower()

Trả về phiên bản chữ thường của chuỗi này.

lstrip

string string.lstrip(chars=None)

Trả về một bản sao của chuỗi đã xoá các ký tự đầu xuất hiện trong chars. Xin lưu ý rằng chars không phải là tiền tố: tất cả các tổ hợp của giá trị này sẽ bị xoá:
"abcba".lstrip("ba") == "cba"

Tham số

Thông số Mô tả
chars string; hoặc None; mặc định là None
Các ký tự cần xoá hoặc tất cả khoảng trắng nếu không có.

phân vùng

tuple string.partition(sep)

Phân tách chuỗi đầu vào tại lần xuất hiện đầu tiên của dấu phân cách sep và trả về phân vùng kết quả dưới dạng một bộ ba phần tử có dạng (trước, dấu phân cách, sau). Nếu chuỗi đầu vào không chứa dấu phân cách, thì partition sẽ trả về (self, "", "").

Tham số

Thông số Mô tả
sep chuỗi; bắt buộc
Chuỗi cần tách.

removeprefix

string string.removeprefix(prefix)

Nếu chuỗi bắt đầu bằng prefix, hãy trả về một chuỗi mới đã xoá tiền tố. Nếu không, trả về chuỗi.

Tham số

Thông số Mô tả
prefix string; bắt buộc
Tiền tố cần xoá nếu có.

removesuffix

string string.removesuffix(suffix)

Nếu chuỗi kết thúc bằng suffix, hãy trả về một chuỗi mới đã xoá hậu tố. Nếu không, trả về chuỗi.

Tham số

Thông số Mô tả
suffix string; bắt buộc
Hậu tố cần xoá nếu có.

thay thế

string string.replace(old, new, count=-1)

Trả về một bản sao của chuỗi trong đó các lần xuất hiện của old đã được thay thế bằng new, có thể hạn chế số lần thay thế thành count.

Tham số

Thông số Mô tả
old string; bắt buộc
Chuỗi cần thay thế.
new string; bắt buộc
Chuỗi cần thay thế.
count int; mặc định là -1
Số lần thay thế tối đa. Nếu bạn bỏ qua hoặc nếu giá trị là âm, thì sẽ không có giới hạn.

rfind

int string.rfind(sub, start=0, end=None)

Trả về chỉ mục cuối cùng mà sub được tìm thấy hoặc -1 nếu không có chỉ mục nào như vậy, có thể hạn chế thành [start:end], start bao gồm và end loại trừ.

Tham số

Thông số Mô tả
sub string; bắt buộc
Chuỗi con cần tìm.
start int; hoặc None; mặc định là 0
Chỉ tìm kiếm từ vị trí này.
end int; hoặc None; giá trị mặc định là None
vị trí không bắt buộc trước khi hạn chế tìm kiếm.

rindex

int string.rindex(sub, start=0, end=None)

Trả về chỉ mục cuối cùng tìm thấy sub hoặc báo lỗi nếu không có chỉ mục nào như vậy, có thể hạn chế ở [start:end], start bao gồm và end không bao gồm.

Tham số

Thông số Mô tả
sub string; bắt buộc
Chuỗi con cần tìm.
start int; hoặc None; mặc định là 0
Chỉ tìm kiếm từ vị trí này.
end int; hoặc None; giá trị mặc định là None
vị trí không bắt buộc trước khi hạn chế tìm kiếm.

rpartition

tuple string.rpartition(sep)

Phân tách chuỗi đầu vào tại lần xuất hiện cuối cùng của dấu phân cách sep và trả về phân vùng kết quả dưới dạng một bộ dữ liệu gồm 3 phần tử ở dạng (trước, dấu phân cách, sau). Nếu chuỗi đầu vào không chứa dấu phân cách, rpartition sẽ trả về ('', '', self).

Tham số

Thông số Mô tả
sep chuỗi; bắt buộc
Chuỗi cần tách.

rsplit

list string.rsplit(sep, maxsplit=None)

Trả về danh sách tất cả các từ trong chuỗi, sử dụng sep làm dấu phân cách, có thể giới hạn số lần phân tách thành maxsplit. Ngoại trừ việc tách từ bên phải, phương thức này hoạt động giống như split().

Tham số

Thông số Mô tả
sep chuỗi; bắt buộc
Chuỗi cần tách.
maxsplit int; hoặc None; mặc định là None
Số lần phân tách tối đa.

rstrip

string string.rstrip(chars=None)

Trả về một bản sao của chuỗi đã xoá các ký tự cuối xuất hiện trong chars. Xin lưu ý rằng chars không phải là hậu tố: tất cả các tổ hợp của giá trị này sẽ bị xoá:
"abcbaa".rstrip("ab") == "abc"

Tham số

Thông số Mô tả
chars string; hoặc None; mặc định là None
Các ký tự cần xoá hoặc tất cả khoảng trắng nếu không có.

phân tách

list string.split(sep, maxsplit=None)

Trả về danh sách tất cả các từ trong chuỗi, sử dụng sep làm dấu phân cách, có thể giới hạn số lần phân tách thành maxsplit.

Tham số

Thông số Mô tả
sep chuỗi; bắt buộc
Chuỗi cần tách.
maxsplit int; hoặc None; mặc định là None
Số lần phân tách tối đa.

dòng phân tách

sequence string.splitlines(keepends=False)

Phân tách chuỗi tại ranh giới dòng ("\n", "\r\n", "\r") và trả về kết quả dưới dạng danh sách có thể thay đổi mới.

Tham số

Thông số Mô tả
keepends bool; giá trị mặc định là False
. Cho biết liệu dấu ngắt dòng có được đưa vào danh sách kết quả hay không.

startswith

bool string.startswith(sub, start=0, end=None)

Trả về True nếu chuỗi bắt đầu bằng sub, nếu không thì trả về False, có thể hạn chế ở [start:end], start bao gồm và end không bao gồm.

Tham số

Thông số Mô tả
sub chuỗi; hoặc bộ dữ liệu gồm các chuỗi; bắt buộc
Tiền tố (hoặc bộ dữ liệu gồm các tiền tố thay thế) để so khớp.
start int; hoặc None; mặc định là 0
Kiểm thử bắt đầu tại vị trí này.
end int; hoặc None; mặc định là None
Dừng so sánh ở vị trí này.

dải

string string.strip(chars=None)

Trả về một bản sao của chuỗi đã xoá các ký tự đầu hoặc cuối xuất hiện trong chars. Xin lưu ý rằng chars không phải là tiền tố hay hậu tố: tất cả các tổ hợp của giá trị này sẽ bị xoá:
"aabcbcbaa".strip("ab") == "cbc"

Tham số

Thông số Mô tả
chars string; hoặc None; mặc định là None
Các ký tự cần xoá hoặc tất cả khoảng trắng nếu không có.

tiêu đề

string string.title()

Chuyển đổi chuỗi đầu vào thành kiểu viết hoa chữ cái đầu, tức là mỗi từ bắt đầu bằng một chữ cái viết hoa còn các chữ cái còn lại được viết thường. Trong ngữ cảnh này, từ có nghĩa là một chuỗi chữ cái. Phương thức này không hỗ trợ các ký tự bổ sung Unicode.

cao hơn

string string.upper()

Trả về phiên bản viết hoa của chuỗi này.