Chuỗi (String) trong Python

String là một trong các kiểu phổ biến nhất trong Python. String trong Python là immutable. Chúng ta có thể tạo các chuỗi bằng cách bao một text trong một trích dẫn đơn hoặc trích dẫn kép. Python coi các lệnh trích dẫn đơn và kép là như nhau. Ví dụ:

var1 = 'Hello World!'

var2 = "Python Programming"

Truy cập các giá trị trong String

Python không hỗ trợ một kiểu chữ cái; chúng được coi như các chuỗi có độ dài là 1. Trong Python, String được lưu giữ dưới dạng các ký tự đơn trong vị trí ô nhớ liên tiếp nhau. Lợi thế của sử dụng String là nó có thể được truy cập từ cả hai hướng (tiến về trước forward hoặc ngược về sau backward).

Việc lập chỉ mục của cả hai hướng đều được cung cấp bởi sử dụng String trong Python:

  • Chỉ mục với hướng forward bắt đầu với 0,1,2,3,…
  • Chỉ mục với hướng backward bắt đầu với -1,-2,-3,…

Để truy cập các giá trị trong String, bạn sử dụng các dấu ngoặc vuông có chỉ mục ở bên trong. Ví dụ:

var1 = 'Hello World!'

var2 = "Python Programming"

 

print "var1[0]: ", var1[0]

print "var2[1:5]: ", var2[1:5]

Khi code trên được thực thi sẽ cho kết quả:

var1[0]:  H

var2[1:5]:  ytho

Cập nhật String trong Python

Bạn có thể cập nhật một chuỗi đang tồn tại bằng cách gán (hoặc tái gán) một biến cho string khác. Giá trị mới có thể liên quan hoặc khác hoàn toàn giá trị trước đó. Ví dụ:

var1 = 'Hello World!'

 

print "Chuoi hien tai la :- ", var1[:6] + 'Python'

Khi code trên được thực thi sẽ cho kết quả:

Chuoi hien tai la :-  Hello Python

Các ký tự thoát trong Python

Bảng dưới đây liệt kê danh sách các ký tự thoát hoặc không thể in được mà có thể được biểu diễn với dấu \.

Ký tự thoát - Biểu diễn trong hệ 16 - Miêu tả

\a - 0x07 - Bell hoặc alert

\b - 0x08 - Backspace

\cx - Control-x

\C-x  -  Control-x

\e - 0x1b - Escape

\f - 0x0c - Formfeed

\M-\C-x  -  Meta-Control-x

\n - 0x0a - Newline

\nnn - Notation trong hệ cơ số 8, ở đây n là trong dãy từ 0 tới 7

\r - 0x0d - Carriage return

\s - 0x20 - Space

\t - 0x09 - Tab

\v - 0x0b - Tab dọc

\x - Ký tự x

\xnn - Notation trong hệ thập lục phân, ở đây n là trong dãy từ 0.9, a.f, hoặc A.F

Các toán tử để thao tác với String trong Python

Có ba kiểu toán tử được hỗ trợ bởi String, đó là:

  • Toán tử cơ bản
  • Toán tử membership
  • Toán tử quan hệ

Các toán tử cơ bản để thao tác với String

Có hai loại toán tử cơ bản có thể được sử dụng với String, đó là toán tử nối chuỗi + và toán tử lặp chuỗi *.

Toán tử nối chuỗi + được sử dụng để nối hai chuỗi với nhau và tạo nên một chuỗi mới. Ví dụ:

>>> "hoang" + "nam"

Sẽ cho kết quả là:

'hoangnam'

>>>

Chú ý: Cả hai toán hạng được truyền cho phép nối chuỗi này phải cùng kiểu, nếu không sẽ tạo một lỗi. Ví dụ:

'abc' + 3

>>>

Sẽ tạo ra một lỗi là:

Traceback (most recent call last):

  File "<pyshell#5>", line 1, in <module>

    'abc' + 3

TypeError: cannot concatenate 'str' and 'int' objects

>>>

Toán tử lặp chuỗi * sử dụng hai tham số. Một tham số là giá trị nguyên và tham số khác là chuỗi. Toán tử lặp chuỗi này được sử dụng để lặp đi lặp lại một chuỗi một số lần nào đó. Ví dụ:

>>> 5*"Hoang"

Sẽ cho kết quả là:

'HoangHoangHoangHoangHoang'

Ghi chú: Bạn có thể sử dụng toán tử lặp chuỗi * này theo bất kỳ cách nào như int * string hoặc string * int. Cả hai tham số được truyền cho toán tử này phải không trong cùng một kiểu.

Các toán tử membership để thao tác với String

Toán tử in: trả về true nếu một ký tự là có mặt trong chuỗi đã cho, nếu không nó trả về false.

Toán tử not in: trả về true nếu một ký tự là không tồn tại trong chuỗi đã cho, nếu không nó trả về false.

Ví dụ:

>>> str1="javapoint"

>>> str2='sssit'

>>> str3="seomount"

>>> str4='java'

>>> st5="it"

>>> str6="seo"

>>> str4 in str1

True

>>> str5 in str2

>>> st5 in str2

True

>>> str6 in str3

True

>>> str4 not in str1

False

>>> str1 not in str4

True

Các toán tử quan hệ để thao tác với String

Tất cả các toán tử quan hệ (như <,>, <=, >=, ==, !=, <>) cũng có thể áp dụng cho các String. Các chuỗi được so sánh dựa trên giá trị ASCII hoặc Unicode. Ví dụ:

>>> "HOANG"=="HOANG"

True

>>> "afsha">='Afsha'

True

>>> "Z"<>"z"

True

Giải thích: Giá trị ASCII của a là 97, b là 98 và c là 99, … Giá trị ASCII của A là 65, B là 66, của C là 67, … Sự so sánh giữa các chuỗi được thực hiện dựa trên giá trị ASCII.

Dấu chia chuỗi [] trong Python

Có nhiều cách để chia một chuỗi. Khi chuỗi có thể được truy cập hoặc được lập chỉ mục từ cả hai hướng forward và backward thì chuỗi cũng có thể được chia theo hai hướng này. Dưới đây là cú pháp của dấu chia chuỗi [] trong Python:

<ten_chuoi>[chi_muc_bat_dau:chi_muc_ket_thuc]

hoac

<ten_chuoi>[:chi_muc_ket_thuc]

hoac

<ten_chuoi>[chi_muc_bat_dau:]

Chẳng hạn với cú pháp <ten_chuoi>[chi_muc_bat_dau:chi_muc_ket_thuc], thì toán tử này sẽ trả về các ký tự nằm trong dãy chỉ mục đã cho.

Ví dụ:

>>> str="Nikhil"

>>> str[0:6]

'Nikhil'

>>> str[0:3]

'Nik'

>>> str[2:5]

'khi'

>>> str[:6]

'Nikhil'

>>> str[3:]

'hil'

Ghi chú: chi_muc_bat_dau trong String là inclusive, tức là bao gồm cả ký tự tại vị trí chỉ mục đó. Còn chi_muc_ket_thuc là exclusive, tức là không bao gồm ký tự tại chỉ mục đó.

Toán tử định dạng chuỗi trong Python

Một trong những đặc điểm hay nhất trong Python là toán tử định dạng chuỗi %. Toán tử này là duy nhất cho các String và được sử dụng với hàm print(). Ví dụ:

print "Ten toi la %s va toi nang %d kg!" % ('Hoang', 71)

Khi code trên được thực thi sẽ cho kết quả:

Ten toi la Hoang va toi nang 71 kg!

Bảng dưới đây liệt kê danh sách đầy đủ các biểu tượng có thể được sử dụng với toán tử %:

Biểu tượng định dạng - Chuyển đổi

%c - Ký tự

%s - Chuyển đổi thành chuỗi thông qua hàm str() trước khi định dạng

%i - Số nguyên thập phân có dấu

%d - Số nguyên thập phân có dấu

%u - Số nguyên thập phân không dấu

%o - Số nguyên hệ bát phân

%x - Số nguyên hệ thập lục phân (các chữ cái thường)

%X - Số nguyên hệ thập lục phân (các chữ cái hoa)

%e - Ký hiệu số mũ (với chữ thường 'e')

%E - Ký hiệu số mũ (với chữ hoa 'E')

%f - Số thực dấu chấm động

%g - Viết gọn của %f và %e

%G - Viết gọn của %f và %E

Trích dẫn tam (triple quote) trong Python

Trích dẫn tam trong Python cho phép các chuỗi có thể trải rộng trên nhiều dòng, bao gồm đúng nguyên văn của các newline (dòng mới), tab và bất kỳ ký tự đặc biệt nào khác. Bạn theo dõi đoạn code sau:

para_str = """day la mot chuoi day gom nhieu dong

va gom mot so ky tu khong in duoc chang han nhu

TAB ( \t ) chung se duoc hien thi dung nguyen van nhu the."""

print para_str

Khi code trên được thực thi, nó cho kết quả như dưới đây. Bạn chú ý cách mỗi ký tự đặc biệt đã được chuyển đổi thành dạng được in của nó.

day la mot chuoi day gom nhieu dong

va gom mot so ky tu khong in duoc chang han nhu

TAB ( \t ) chung se duoc hien thi dung nguyen van nhu the.

Các chuỗi thô (raw string) không coi dấu \ như là một ký tự đặc biệt. Mỗi ký tự bạn đặt vào trong một chuỗi thô sẽ tồn tại giống như cách bạn đã viết nó.

Để hiểu rõ vấn đề này, trước hết bạn theo dõi ví dụ:

print 'C:\\nowhere'

Khi code trên được thực thi sẽ cho kết quả:

C:\nowhere

Bây giờ sử dụng chuỗi thô. Chúng ta đã đặt biểu thức trong r'bieu_thuc' như sau:

print r'C:\\nowhere'

Khi code trên được thực thi sẽ cho kết quả:

C:\\nowhere

Chuỗi dạng Unicode trong Python

Các chuỗi thông thường trong Python được lưu trữ nội tại dưới dạng ASCII 8 bit, trong khi các chuỗi Unicode được lưu trữ dưới dạng Unicode 16 bit. Điều này cho phép để có một tập hợp các ký tự đa dạng hơn, bao gồm các ký tự đặc biệt từ hầu hết các ngôn ngữ trên thế giới. Bạn theo dõi ví dụ:

print u'Hello, world!'

Khi code trên được thực thi sẽ cho kết quả:

Hello, world!

Như bạn có thể thấy, các chuỗi dạng Unicode sử dụng tiền tố u, trong khi các chuỗi thô sử dụng tiền tố r.

Các phương thức và hàm đã xây dựng sẵn để xử lý chuỗi trong Python

Python cung cấp các phương thức đa dạng đã được xây dựng sẵn để thao tác với các chuỗi. Bảng dưới đây liệt kê các phương thức này. Bạn truy cập link để thấy ví dụ chi tiết.

1. capitalize()
Viết hoa chữ cái đầu tiên của chuỗi

Cú pháp

Cú pháp của phương thức capitalize() trong Python:

str.capitalize()

Tham số

  • NA

Trả về giá trị

Trả về một bản sao của chuỗi với chữ cái đầu tiên được viết hoa.

Chương trình Python ví dụ

Ví dụ sau minh họa cách sử dụng của phương thức capitalize() trong Python.

str = "vi du Python ve chuoi!!!";

print "str.capitalize() : ", str.capitalize()

Chạy chương trình Python trên sẽ cho kết quả:

str.capitalize() :  Vi du python ve chuoi!!!

2. center(width, fillchar)
Trả về một chuỗi mới, trong đó chuỗi ban đầu đã được cho vào trung tâm và hai bên đó là các fillchar sao cho tổng số ký tự của chuỗi mới là width

Cú pháp

str.center(width[, fillchar])

Tham số

  • width -- Đây là tổng độ dài của chuỗi.
  • fillchar -- Đây là ký tự cần điền vào.

Trả về giá trị

Trả về một chuỗi mới, trong đó chuỗi ban đầu đã được cho vào trung tâm và hai bên đó là các fillchar sao cho tổng số ký tự của chuỗi mới là width.

Chương trình Python ví dụ

Ví dụ sau minh họa cách sử dụng của center() trong Python.

str = "vi du Python ve chuoi!!!";

print "str.center(40, 'a') : ", str.center(40, 'a')

Kết quả là:

str.center(40, 'a') :  aaaaaaaavi du Python ve chuoi!!!aaaaaaaa

3. count(str, beg= 0, end = len(string))
Đếm xem chuỗi str này xuất hiện bao nhiêu lần trong chuỗi string hoặc chuỗi con của string nếu bạn cung cấp chỉ mục ban đầu start và chỉ mục kết thúc end

Cú pháp

str.count(sub, start= 0,end=len(string))

Chi tiết về tham số:

  • sub -- Đây là chuỗi con để được tìm kiếm.
  • start -- Tìm kiếm bắt đầu từ chỉ mục này. Ký tự đầu tiên bắt đầu từ chỉ mục 0. Theo mặc định, bắt đầu tìm kiếm từ chỉ mục 0.
  • end -- Tìm kiếm kết thúc tại chỉ mục này. Theo mặc định, việc tìm kiếm kết thúc ở chỉ mục cuối cùng.

Trả về giá trị

Đếm xem chuỗi str này xuất hiện bao nhiêu lần trong chuỗi string hoặc chuỗi con của string nếu bạn cung cấp chỉ mục ban đầu start và chỉ mục kết thúc end

Chương trình Python ví dụ

str = "vi du Python ve chuoi!!!";

 

sub = "i";

print "str.count(sub, 4, 40) : ", str.count(sub, 4, 40)

sub = "vietjack";

print "str.count(sub) : ", str.count(sub)

Kết quả là:

str.count(sub, 4, 40) :  1

str.count(sub) :  0

4. decode(encoding='UTF-8',errors='strict')
Giải mã chuỗi bởi sử dụng encoding đã cho

Cú pháp

Str.decode(encoding='UTF-8',errors='strict')

Chi tiết về tham số:

  • encoding -- Đây là encodings để được sử dụng.
  • errors -- Tham số này có thể được cung cấp để thiết lập một trình xử lý lỗi khác. Mặc định cho lỗi là 'strict', nghĩa là các lỗi liên quan tới mã hóa sẽ tạo một UnicodeError. Một số giá trị khác là 'ignore', 'replace', 'xmlcharrefreplace', 'backslashreplace' ...

Trả về giá trị

Trả về chuỗi đã được giải mã.

Chương trình Python ví dụ

Str = "vi du Python ve chuoi!!!";

Str = Str.encode('base64','strict');

 

print "Chuoi duoc ma hoa la: " + Str

print "Chuoi sau khi giai ma la: " + Str.decode('base64','strict')

Kết quả là:

Chuoi duoc ma hoa la: dmkgZHUgUHl0aG9uIHZlIGNodW9pISEh

 

Chuoi sau khi giai ma la: vi du Python ve chuoi!!!

5. encode(encoding='UTF-8',errors='strict')
Trả về phiên bản chuỗi đã được mã hóa của chuỗi ban đầu. Nếu có lỗi xảy ra, thì chương trình sẽ tạo một ValueError trừ khi các lỗi này được cung cấp với ignore hoặc replace

Cú pháp

str.encode(encoding='UTF-8',errors='strict')

Chi tiết về tham số:

  • encoding -- Đây là encodings để được sử dụng.
  • errors -- Tham số này có thể được cung cấp để thiết lập một trình xử lý lỗi khác. Mặc định cho lỗi là 'strict', nghĩa là các lỗi liên quan tới mã hóa sẽ tạo một UnicodeError. Một số giá trị khác là 'ignore', 'replace', 'xmlcharrefreplace', 'backslashreplace' ...

Trả về giá trị

Trả về phiên bản chuỗi đã được mã hóa của chuỗi ban đầu.

Chương trình Python ví dụ

str = "vi du Python ve chuoi!!!";

 

print "Ma hoa chuoi la: " + str.encode('base64','strict')

Kết quả là:

Ma hoa chuoi la: dmkgZHUgUHl0aG9uIHZlIGNodW9pISEh

6. endswith(suffix, beg=0, end=len(string))
Xác định xem nếu chuỗi string hoặc chuỗi con đã cho của string (nếu bạn cung cấp chỉ mục bắt đầu beg và chỉ mục kết thúc end) kết thúc với hậu tố suffix thì trả về true, nếu không thì phương thức này trả về false

Cú pháp

str.endswith(suffix[, start[, end]])

Chi tiết về tham số:

  • suffix -- Đây có thể là một chuỗi hoặc cũng có thể là một tuple của các tiền tố.
  • start -- Chỉ mục bắt đầu.
  • end -- Chỉ mục kết thúc.

Trả về giá trị

TRUE nếu chuỗi kết thúc với suffix đã cho, nếu không thì trả về FALSE.

Chương trình Python ví dụ

str = "vi du Python ve chuoi....ok!!!";

 

suffix = "ok!!!";

print str.endswith(suffix)

print str.endswith(suffix,20)

 

suffix = "is";

print str.endswith(suffix, 2, 4)

print str.endswith(suffix, 2, 6)

Kết quả là:

True

True

False

False

7. expandtabs(tabsize=8)
Mở rộng các tab trong chuỗi tới số khoảng trống đã cho; mặc định là 8 space cho mỗi tab nếu bạn không cung cấp tabsize

Cú pháp

str.expandtabs(tabsize=8)

Chi tiết về tham số:

  • tabsize -- Xác định số ký tự để được thay thế cho một ký tự tab '\t'.

Trả về giá trị

Trả về một bản sao của chuỗi với tab đã được mở rộng (chẳng hạn bởi cac khoảng trống).

Chương trình Python ví dụ

str = "vi du\tPython ve chuoi....ok!!!";

 

print "Chuoi ban dau: " + str

print "Chuoi voi tab mac dinh: " +  str.expandtabs()

print "Chuoi voi tab mo rong: " +  str.expandtabs(12)

Kết quả là:

Chuoi ban dau: vi du   Python ve chuoi....ok!!!

Chuoi voi tab mac dinh: vi du   Python ve chuoi....ok!!!

Chuoi voi tab mo rong: vi du       Python ve chuoi....ok!!!

8. find(str, beg=0 end=len(string))
Xác định xem chuỗi str có xuất hiện trong chuỗi string hoặc chuỗi con đã cho của string (nếu bạn cung cấp chỉ mục bắt đầu beg và chỉ mục kết thúc end), nếu xuất hiện thì trả về chỉ mục của str, còn không thì trả về -1

Cú pháp

str.find(str, beg=0 end=len(string))

Chi tiết về tham số:

  • str -- Xác định chuỗi để được tìm kiếm.
  • beg -- Xác định chỉ mục bắt đầu, mặc định là 0.
  • end -- Xác định chỉ mục kết thúc, mặc định là bằng độ dài chuỗi.

Trả về giá trị

Trả về giá trị chỉ mục nếu được tìm thấy, nếu không thì trả về -1.

Chương trình Python ví dụ

str1 = "vi du Python ve chuoi....ok!!!";

str2 = "on";

 

print str1.find(str2)

print str1.find(str2, 10)

print str1.find(str2, 40)

Kết quả là:

10

10

-1

9. index(str, beg=0 end=len(string))
Tương tự như find(), nhưng tạo ra một ngoại lệ nếu str là không được tìm thấy

Cú pháp

str.index(str, beg=0 end=len(string))

Chi tiết về tham số:

  • str -- Xác định chuỗi để được tìm kiếm.
  • beg -- Xác định chỉ mục bắt đầu, mặc định là 0.
  • end -- Xác định chỉ mục kết thúc, mặc định là bằng độ dài chuỗi.

Trả về giá trị

Xác định xem chuỗi str có xuất hiện trong chuỗi string hoặc chuỗi con đã cho của string (nếu bạn cung cấp chỉ mục bắt đầu beg và chỉ mục kết thúc end), nếu xuất hiện thì trả về chỉ mục của str, nếu không tìm thấy thì trả về một.

Chương trình Python ví dụ

str1 = "vi du Python ve chuoi....ok!!!";

str2 = "on";

 

print str1.index(str2)

print str1.index(str2, 10)

print str1.index(str2, 40)

Kết quả là:

10

10

Traceback (most recent call last):

  File "C:/Users/doannhg/PycharmProjects/test/test.py", line 10, in >module<

    print str1.index(str2, 40)

ValueError: substring not found

10. isalnum()
Trả về true nếu chuỗi có ít nhất một ký tự và tất cả ký tự là chữ-số. Nếu không hàm sẽ trả về false

Cú pháp

Cú pháp của isalnum() trong Python:

str.isa1num()

Chi tiết về tham số:

  • NA

Trả về giá trị

Trả về true nếu chuỗi có ít nhất một ký tự và tất cả ký tự là chữ-số. Nếu không hàm sẽ trả về false.

Chương trình Python ví dụ

Ví dụ sau minh họa cách sử dụng của isalnum() trong Python.

str = "nam2015";  # Khong co khoang trong trong chuoi

print str.isalnum()

 

str = "vi du Python ve chuoi....ok!!!";

print str.isalnum()

Chạy chương trình Python trên sẽ cho kết quả:

True

False

11. islpha()
Trả về true nếu chuỗi có ít nhất 1 ký tự và tất cả ký tự là chữ cái. Nếu không phương thức sẽ trả về false

Cú pháp

Cú pháp của islpha() trong Python:

str.isalpha()

Chi tiết về tham số:

  • NA

Trả về giá trị

Trả về true nếu chuỗi có ít nhất 1 ký tự và tất cả ký tự là chữ cái. Nếu không phương thức sẽ trả về false.

Chương trình Python ví dụ

Ví dụ sau minh họa cách sử dụng của isalpha() trong Python.

str = "nam";  # khong co khoang trong va ky so trong chuoi

print str.isalpha()

 

str = "vi du Python ve chuoi....ok!!!";

print str.isalpha()

Chạy chương trình Python trên sẽ cho kết quả −

True

False

12. isdigit()
Trả về true nếu chuỗi chỉ chứa các chữ số, nếu không là false

Cú pháp

Cú pháp của isdigit() trong Python:

str.isdigit()

Chi tiết về tham số:

  • NA

Trả về giá trị

Trả về true nếu chuỗi chỉ chứa các chữ số, nếu không là false.

Chương trình Python ví dụ

Ví dụ sau minh họa cách sử dụng của isdigit() trong Python.

str = "123456";  # chi co cac ky so trong chuoi nay

print str.isdigit()

 

str = "vi du Python ve chuoi....ok!!!";

print str.isdigit()

Chạy chương trình Python trên sẽ cho kết quả −

True

False

13. islower()
Trả về true nếu tất cả ký tự trong chuỗi là ở dạng chữ thường, nếu không là false

Cú pháp

Cú pháp của islower() trong Python:

str.islower()

Chi tiết về tham số:

  • NA

Trả về giá trị

Trả về true nếu tất cả ký tự trong chuỗi là ở dạng chữ thường, nếu không là false.

Chương trình Python ví dụ

Ví dụ sau minh họa cách sử dụng của islower() trong Python.

str = "vi du Python ve chuoi....ok!!!";

print str.islower()

 

str = "vi du python ve chuoi....ok!!!";

print str.islower()

Chạy chương trình Python trên sẽ cho kết quả −

False

True

14. isnumeric()
Trả về true nếu một chuỗi dạng Unicode chỉ chứa các ký tự số, nếu không là false

Cú pháp

Cú pháp của isnumeric() trong Python:

str.isnumeric()

Chi tiết về tham số:

  • NA

Trả về giá trị

Trả về true nếu tất cả ký tự trong chuỗi là số, nếu không là false.

Chương trình Python ví dụ

Ví dụ sau minh họa cách sử dụng của isnumeric() trong Python.

str = u"nam2015"; 

print str.isnumeric()

 

str = u"23443434";

print str.isnumeric()

Chạy chương trình Python trên sẽ cho kết quả −

False

True

15. isspace()

Trả về true nếu chuỗi chỉ chứa các ký tự khoảng trắng whitespace, nếu không là false

Cú pháp

Cú pháp của isspace() trong Python:

str.isspace()

Chi tiết về tham số:

  • NA

Trả về giá trị

Trả về true nếu chuỗi chỉ chứa các ký tự khoảng trắng whitespace, nếu không là false.

Chương trình Python ví dụ

Ví dụ sau minh họa cách sử dụng của isspace() trong Python.

str = "       ";

print str.isspace()

 

str = "vi du Python ve chuoi....ok!!!";

print str.isspace()

Chạy chương trình Python trên sẽ cho kết quả −

True

False

16. istitle()
Trả về true nếu chuỗi là ở dạng titlecase, nếu không là false

Cú pháp

Cú pháp của istitle() trong Python:

str.istitle()

Chi tiết về tham số:

  • NA

Trả về giá trị

Trả về true nếu chuỗi là ở dạng titlecase, nếu không là false.

Chương trình Python ví dụ

Ví dụ sau minh họa cách sử dụng của istitle() trong Python.

str = "Vi Du Python Ve Chuoi...Ok!!!";

print str.istitle()

 

str = "vi du Python ve chuoi....ok!!!";

print str.istitle()

Chạy chương trình Python trên sẽ cho kết quả −

True

False

17. isupper()
Trả về true nếu tất cả ký tự trong chuỗi là chữ hoa

Cú pháp

Cú pháp của isupper() trong Python:

str.isupper()

Chi tiết về tham số:

  • NA

Trả về giá trị

Trả về true nếu tất cả ký tự trong chuỗi là chữ hoa.

Chương trình Python ví dụ

Ví dụ sau minh họa cách sử dụng của isupper() trong Python.

str = "VI DU PYTHON VE CHUOI....OK!!!";

print str.isupper()

 

str = "vi du Python ve chuoi....ok!!!";

print str.isupper()

Chạy chương trình Python trên sẽ cho kết quả −

True

False

18. join(seq)
Nối chuỗi các biểu diễn chuỗi của các phần tử trong dãy seq thành một chuỗi

Cú pháp

Cú pháp của join() trong Python:

str.join(sequence)

Chi tiết về tham số:

  • sequence -- Đây là dãy các phần tử để được kết hợp.

Trả về giá trị

Trả về một chuỗi, là kết quả của việc nối các chuỗi trong dãy seq.

Chương trình Python ví dụ

Ví dụ sau minh họa cách sử dụng của join() trong Python.

s = "-";

seq = ("a", "b", "c"); # Day la day cac chuoi.

print s.join( seq )

Chạy chương trình Python trên sẽ cho kết quả −

a-b-c

19. len(string)
Trả về độ dài của chuỗi

Cú pháp

Cú pháp của len() trong Python:

len( str )

Chi tiết về tham số:

  • NA

Trả về giá trị

Trả về độ dài chuỗi.

Chương trình Python ví dụ

Ví dụ sau minh họa cách sử dụng của len() trong Python.

str = "vi du Python ve chuoi....ok!!!";

 

print "Do dai cua chuoi la: ", len(str)

Chạy chương trình Python trên sẽ cho kết quả −

Do dai cua chuoi la:  30

20. ljust(width[, fillchar])
Trả về một chuỗi mới, trong đó có chuỗi ban đầu được căn chỉnh vào bên trái và bên phải là các fillchar sao cho tổng số ký tự là width

Cú pháp

Cú pháp của ljust() trong Python:

str.ljust(width[, fillchar])

Chi tiết về tham số:

  • width -- Độ dài chuỗi.
  • fillchar -- Đây là ký tự để điền vào, mặc định là khoảng trống space.

Trả về giá trị

Trả về một chuỗi mới, trong đó có chuỗi ban đầu được căn chỉnh vào bên trái và bên phải là các fillchar sao cho tổng số ký tự là width.

Chương trình Python ví dụ

Ví dụ sau minh họa cách sử dụng của ljust() trong Python.

str = "vi du Python ve chuoi....ok!!!";

 

print str.ljust(50, 'v')

Chạy chương trình Python trên sẽ cho kết quả −

vi du Python ve chuoi....ok!!!vvvvvvvvvvvvvvvvvvvv

21. lower()
Chuyển đối tất cả chữ hoa trong chuỗi sang kiểu chữ thường

Cú pháp

Cú pháp của lower() trong Python:

str.lower()

Chi tiết về tham số:

  • NA

Trả về giá trị

Phương thức này trả về một bản sao của chuỗi ban đầu sau khi đã chuyển đối tất cả chữ hoa trong chuỗi sang kiểu chữ thường.

Chương trình Python ví dụ

Ví dụ sau minh họa cách sử dụng của lower() trong Python.

str = "vi du Python ve chuoi....ok!!!";

 

print str.lower()

Chạy chương trình Python trên sẽ cho kết quả −

vi du python ve chuoi....ok!!!

22. lstrip()
Xóa tất cả các khoảng trống trắng ban đầu (leading) trong chuỗi

Cú pháp

Cú pháp của lstrip() trong Python:

str.lstrip([chars])

Chi tiết về tham số:

  • chars -- Bạn có thể cung cấp các ký tự mà cần cắt.

Trả về giá trị

Trả về một bản sao của chuỗi ban đầu sau khi đã cắt tất cả các ký tự chars đã cung cấp từ phần đầu của chuỗi (các ký tự mặc định là khoảng trắng).

Chương trình Python ví dụ

Ví dụ sau minh họa cách sử dụng của lstrip() trong Python.

str = "     vi du Python ve chuoi....ok!!!     ";

print str.lstrip()

str = "88888888vi du Python ve chuoi....ok!!!8888888";

print str.lstrip('8')

Chạy chương trình Python trên sẽ cho kết quả −

vi du Python ve chuoi....ok!!!    

vi du Python ve chuoi....ok!!!8888888

23. maketrans()
Trả về một bảng thông dịch được sử dụng trong hàm translate

Cú pháp

Cú pháp của maketrans() trong Python:

str.maketrans(intab, outtab]);

Chi tiết về tham số:

  • intab -- Đây là chuỗi có các ký tự thực sự.
  • outtab -- Đây là chuỗi có các ký tự ánh xạ tương ứng.

Trả về giá trị

Trả về một bảng tịnh tiến được sử dụng trong hàm translate().

Chương trình Python ví dụ

Ví dụ sau minh họa cách sử dụng của maketrans() trong Python:

from string import maketrans   # bat buoc de goi ham maketrans.

 

intab = "aeiou"

outtab = "12345"

trantab = maketrans(intab, outtab)

 

str = "vi du Python ve chuoi....ok!!!";

print str.translate(trantab)

Chạy chương trình Python trên sẽ cho kết quả −

v3 d5 Pyth4n v2 ch543....4k!!!

24. max(str)
Trả về ký tự chữ cái lớn nhất từ chuỗi str đã cho

Cú pháp

Cú pháp của max() trong Python:

max(str)

Chi tiết về tham số:

  • str -- Đây là một chuỗi.

Trả về giá trị

Trả về ký tự chữ cái lớn nhất từ chuỗi str đã cho.

Chương trình Python ví dụ

Ví dụ sau minh họa cách sử dụng của max() trong Python.

str = "vi du Python ve chuoi....ok!!!";

print "Ky tu chu cai lon nhat: " + max(str)

 

str = "vi du VietJack ve chuoi....ok!!!";

print "Ky tu chu cai lon nhat: " + max(str)

Chạy chương trình Python trên sẽ cho kết quả −

Ky tu chu cai lon nhat: y

Ky tu chu cai lon nhat: v

25. min(str)
Trả về ký tự chữ cái nhỏ nhất từ chuỗi str đã cho

Cú pháp

Cú pháp của min() trong Python:

min(str)

Chi tiết về tham số:

  • str -- Đây là một chuỗi.

Trả về giá trị

Trả về ký tự chữ cái nhỏ nhất từ chuỗi str đã cho.

Chương trình Python ví dụ

Ví dụ sau minh họa cách sử dụng của min() trong Python.

 

str = "vi-du-Python-ve-chuoi....ok!!!";

print "Ky tu chu cai nho nhat la: " + min(str)

 

str = "Vi-du-VietJack-ve-chuoi....ok!!!";

print "Ky tu chu cai nho nhat la: " + min(str)

Chạy chương trình Python trên sẽ cho kết quả −

Ky tu chu cai nho nhat la: !

Ky tu chu cai nho nhat la: !

26. replace(old, new[, max])
Thay thế tất cả sự xuất hiện của old trong chuỗi với new với số lần xuất hiện max (nếu cung cấp)

Cú pháp

Cú pháp của replace() trong Python:

str.replace(old, new[, max])

Chi tiết về tham số:

  • old -- Đây là chuỗi con cũ để được thay thế.
  • new -- Đây là chuỗi con mới để thay thế cho chuỗi con cũ.
  • max -- Nếu tham số tùy ý max này được cung cấp, thì chỉ có các sự xuất hiện đầu tiên được thay thế.

Trả về giá trị

Trả về một bản sao của chuỗi ban đầu sau khi đã thay thế các chuỗi con cũ bằng chuỗi con mới.

Chương trình Python ví dụ

Ví dụ sau minh họa cách sử dụng của replace() trong Python.

str = "vi du Python ve chuoi....ok!!! that su rat don gian";

print str.replace("Python", "VietJack")

print str.replace("ve", "la", 1)

Chạy chương trình Python trên sẽ cho kết quả −

vi du VietJack ve chuoi....ok!!! that su rat don gian

vi du Python la chuoi....ok!!! that su rat don gian

27. rfind(str, beg=0 end=len(string))
Tương tự hàm find(), nhưng trả về chỉ mục cuối cùng

Cú pháp

Cú pháp của rfind() trong Python:

str.rfind(str, beg=0 end=len(string))

Chi tiết về tham số:

  • str -- Xác định chuỗi để được tìm kiếm.
  • beg -- Xác định chỉ mục bắt đầu, mặc định là 0.
  • end -- Xác định chỉ mục kết thúc, mặc định là bằng độ dài chuỗi.

Trả về giá trị

Trả về chỉ mục cuối cùng nơi chuỗi str được tìm thấy, hoặc -1 nếu không tìm thấy.

Chương trình Python ví dụ

Ví dụ sau minh họa cách sử dụng của rfind() trong Python.

str1 = "vi du Python ve chuoi....ok!!!";

str2 = "on";

 

print str1.rfind(str2)

 

print str1.rfind(str2, 0, 10)

print str1.rfind(str2, 10, 0)

 

print str1.find(str2)

print str1.find(str2, 0, 10)

print str1.find(str2, 10, 0)

Chạy chương trình Python trên sẽ cho kết quả −

10

-1

-1

10

-1

-1

28. rindex(str, beg=0, end=len(string))
Giống index(), nhưng trả về chỉ mục cuối cùng nếu tìm thấy

Cú pháp

Cú pháp của rindex() trong Python:

str.rindex(str, beg=0 end=len(string))

Chi tiết về tham số:

  • str -- Xác định chuỗi để được tìm kiếm.
  • beg -- Xác định chỉ mục bắt đầu, mặc định là 0
  • len -- This is ending index, by default its equal to the length of the string.

Trả về giá trị

Trả về chỉ mục cuối cùng nơi chuỗi str được tìm thấy, hoặc một exeption nếu không tìm thấy.

Chương trình Python ví dụ

Ví dụ sau minh họa cách sử dụng của rindex() trong Python.

str1 = "vi du Python ve chuoi....ok!!!";

str2 = "on";

 

print str1.rindex(str2)

print str1.index(str2)

Chạy chương trình Python trên sẽ cho kết quả −

10

10

29. rjust(width,[, fillchar])
Trả về một chuỗi mới, trong đó có chuỗi ban đầu được căn chỉnh vào bên phải và bên trái là các fillchar sao cho tổng số ký tự là width

Cú pháp

Cú pháp của rjust() trong Python:

str.rjust(width[, fillchar])

Chi tiết về tham số:

  • width -- Độ rộng chuỗi sau khi đã được phụ thêm.
  • fillchar -- Ký tự cần điền, mặc định là khoảng trống.

Trả về giá trị

Trả về một chuỗi mới, trong đó có chuỗi ban đầu được căn chỉnh vào bên phải và bên trái là các fillchar sao cho tổng số ký tự là width.

Chương trình Python ví dụ

Ví dụ sau minh họa cách sử dụng của rjust() trong Python.

str = "vi du Python ve chuoi....ok!!!";

 

print str.rjust(50, 'V')

Chạy chương trình Python trên sẽ cho kết quả −

VVVVVVVVVVVVVVVVVVVVvi du Python ve chuoi....ok!!!

30. rstrip()
Xóa bỏ tất cả các khoảng trống trắng ở cuối (trailing) của chuỗi

Cú pháp

Cú pháp của rstrip() trong Python:

str.rstrip([chars])

Chi tiết về tham số:

  • chars -- Bạn có thể cung cấp các ký tự nào cần cắt.

Trả về giá trị

Trả về một bản sao của chuỗi trong đó tất cả các chars đã được xóa từ phần cuối chuỗi (các ký tự mặc định là khoảng trống trắng).

Chương trình Python ví dụ

Ví dụ sau minh họa cách sử dụng của rstrip() trong Python.

str = "     vi du Python ve chuoi....ok!!!     ";

print str.rstrip()

str = "88888888vi du Python ve chuoi....ok!!!8888888";

print str.rstrip('8')

Chạy chương trình Python trên sẽ cho kết quả −

     vi du Python ve chuoi....ok!!!

88888888vi du Python ve chuoi....ok!!!

31. split(str="", num= string.count(str))
Chia chuỗi theo delimeter đã cho (là space nếu không được cung cấp) và trả về danh sách các chuỗi con; nếu bạn cung cấp num thì chia chuỗi thành num chuỗi con

Cú pháp

Cú pháp của splitlines() trong Python:

str.splitlines( num=string.count('\n'))

Chi tiết về tham số:

  • num -- Là bất kỳ số nào, nếu có mặt thì được giả sử là các ngắt dòng cần được bao trong các dòng.

Trả về giá trị

Trả về một List gồm tất cả các dòng trong chuỗi, và tùy ý xác định các ngắt dòng (nếu num được cung cấp và là true).

Chương trình Python ví dụ

Ví dụ sau minh họa cách sử dụng của splitlines() trong Python.

str = "Dong1- v i e t j a c k\nDong2- v i e t\n\nDong3- e t j a c k";

print str.splitlines( )

print str.splitlines( 0 )

print str.splitlines( 3 )

print str.splitlines( 4 )

print str.splitlines( 5 )

Chạy chương trình Python trên sẽ cho kết quả −

['Dong1- v i e t j a c k', 'Dong2- v i e t', '', 'Dong3- e t j a c k']

['Dong1- v i e t j a c k', 'Dong2- v i e t', '', 'Dong3- e t j a c k']

['Dong1- v i e t j a c k\n', 'Dong2- v i e t\n', '\n', 'Dong3- e t j a c k']

['Dong1- v i e t j a c k\n', 'Dong2- v i e t\n', '\n', 'Dong3- e t j a c k']

['Dong1- v i e t j a c k\n', 'Dong2- v i e t\n', '\n', 'Dong3- e t j a c k']

32. splitlines( num=string.count('\n'))
Trả về một List gồm tất cả các dòng trong chuỗi, và tùy ý xác định các ngắt dòng (nếu num được cung cấp và là true).

Cú pháp

Cú pháp của splitlines() trong Python:

str.splitlines( num=string.count('\n'))

Chi tiết về tham số:

  • num -- Là bất kỳ số nào, nếu có mặt thì được giả sử là các ngắt dòng cần được bao trong các dòng.

Trả về giá trị

Trả về một List gồm tất cả các dòng trong chuỗi, và tùy ý xác định các ngắt dòng (nếu num được cung cấp và là true).

Chương trình Python ví dụ

Ví dụ sau minh họa cách sử dụng của splitlines() trong Python.

str = "Dong1- v i e t j a c k\nDong2- v i e t\n\nDong3- e t j a c k";

print str.splitlines( )

print str.splitlines( 0 )

print str.splitlines( 3 )

print str.splitlines( 4 )

print str.splitlines( 5 )

Chạy chương trình Python trên sẽ cho kết quả −

['Dong1- v i e t j a c k', 'Dong2- v i e t', '', 'Dong3- e t j a c k']

['Dong1- v i e t j a c k', 'Dong2- v i e t', '', 'Dong3- e t j a c k']

['Dong1- v i e t j a c k\n', 'Dong2- v i e t\n', '\n', 'Dong3- e t j a c k']

['Dong1- v i e t j a c k\n', 'Dong2- v i e t\n', '\n', 'Dong3- e t j a c k']

['Dong1- v i e t j a c k\n', 'Dong2- v i e t\n', '\n', 'Dong3- e t j a c k']

33. startswith(str, beg=0,end=len(string))
Xác định xem chuỗi hoặc chuỗi con (nếu bạn cung cấp chỉ mục bắt đầu beg và chỉ mục kết thúc end) có bắt đầu với chuỗi con str không, nếu có trả về true, nếu không là false

Cú pháp

Cú pháp của startswith() trong Python:

str.startswith(str, beg=0,end=len(string));

Chi tiết về tham số:

  • str -- Là chuỗi cần được kiểm tra.
  • beg -- Tham số tùy ý này để thiết lập chỉ mục bắt đầu của boundary kết nối.
  • end -- Tham số tùy ý này để thiết lập chỉ mục kết thúc của boundary kết nối.

Trả về giá trị

Trả về true nếu bắt đầu với chuỗi con str, nếu không là false.

Chương trình Python ví dụ

Ví dụ sau minh họa cách sử dụng của startswith() trong Python.

str = "vi du Python ve chuoi....ok!!!";

print str.startswith( 'vi' )

print str.startswith( 'du', 2, 4 )

print str.startswith( 'Py', 2, 4 )

Chạy chương trình Python trên sẽ cho kết quả −

True

False

False

34. strip([chars])
Thực hiện cả hai phương thức lstrip() và rstrip() trên chuỗi

Cú pháp

Cú pháp của strip() trong Python:

str.strip([chars]);

Chi tiết về tham số:

  • chars -- Các ký tự để được xóa từ phần đầu hoặc phần cuối của chuỗi.

Trả về giá trị

Trả về một bản sao của chuỗi ban đầu trong đó tất cả ký tự đã được cắt từ phần đầu và phần cuối của chuỗi (các ký tự mặc định là khoảng trống trắng).

Chương trình Python ví dụ

Ví dụ sau minh họa cách sử dụng của strip() trong Python.

str = "VVVVVVvi du Python ve chuoi....ok!!!VVVVVV";

print str.strip( 'V' )

Chạy chương trình Python trên sẽ cho kết quả −

vi du Python ve chuoi....ok!!!

35. swapcase()
Đảo ngược kiểu của tất cả ký tự trong chuỗi

Cú pháp

Cú pháp của swapcase() trong Python:

str.swapcase();

Chi tiết về tham số:

  • NA

Trả về giá trị

Trả về một bản sao của chuỗi ban đầu sau khi đã đảo ngược kiểu của tất cả ký tự trong chuỗi.

Chương trình Python ví dụ

Ví dụ sau minh họa cách sử dụng của swapcase() trong Python.

str = "vi du PYTHON ve chuoi....ok!!!";

print str.swapcase()

 

str = "vi du PYTHON ve CHUOI....ok!!!";

print str.swapcase()

Chạy chương trình Python trên sẽ cho kết quả −

VI DU python VE CHUOI....OK!!!

VI DU python VE chuoi....OK!!!

36. title()
Trả về một bản sao của chuỗi trong đó tất cả ký tự đầu tiên của tất cả các từ là ở kiểu chữ hoa.

Cú pháp

Cú pháp của title() trong Python:

str.title();

Chi tiết về tham số:

  • NA

Trả về giá trị

Trả về một bản sao của chuỗi trong đó tất cả ký tự đầu tiên của tất cả các từ là ở kiểu chữ hoa.

Chương trình Python ví dụ

Ví dụ sau minh họa cách sử dụng của title() trong Python.

str = "vi du Python ve chuoi....ok!!!";

print str.title()

Chạy chương trình Python trên sẽ cho kết quả −

Vi Du Python Ve Chuoi....Ok!!!

37. translate(table, deletechars="")
Trả về một bản sao đã được thông dịch của chuỗi

Cú pháp

Cú pháp của translate() trong Python:

str.translate(table[, deletechars]);

Chi tiết về tham số:

  • table -- Bạn có thể sử dụng hàm maketrans() để tạo một bảng thông dịch.
  • deletechars -- Danh sách các ký tự để được xóa từ chuỗi ban đầu.

Trả về giá trị

Trả về một bản sao đã được thông dịch của chuỗi.

Chương trình Python ví dụ

Ví dụ sau minh họa cách sử dụng của translate() trong Python:

from string import maketrans   # Day la bat buoc de goi ham maketrans.

 

intab = "aeiou"

outtab = "12345"

trantab = maketrans(intab, outtab)

 

str = "vi du Python ve chuoi....ok!!!";

print str.translate(trantab)

Chạy chương trình Python trên sẽ cho kết quả −

v3 d5 Pyth4n v2 ch543....4k!!!

Dưới đây là ví dụ để xóa các ký tự 'v' và 'u' từ chuỗi

from string import maketrans   # Day la bat buoc de goi ham maketrans

 

intab = "aeiou"

outtab = "12345"

trantab = maketrans(intab, outtab)

 

str = "vi du Python ve chuoi....ok!!!";

print str.translate(trantab, 'vu')

Kết quả là:

3 d Pyth4n 2 ch43....4k!!!

38. upper()
Chuyển đổi các chữ thường trong chuỗi thành chữ hoa

Cú pháp

Cú pháp của upper() trong Python:

str.upper()

Chi tiết về tham số:

  • NA

Trả về giá trị

Trả về một bản sao của chuỗi ban đầu trong đó tất cả các chữ thường đã được chuyển đổi thành chữ hoa.

Chương trình Python ví dụ

Ví dụ sau minh họa cách sử dụng của upper() trong Python.

str = "vi du Python ve chuoi....ok!!!";

 

print "str.capitalize() : ", str.upper()

Chạy chương trình Python trên sẽ cho kết quả −

str.capitalize() :  VI DU PYTHON VE CHUOI....OK!!!

39. zfill(width)
Trả về một chuỗi mới, trong đó bao gồm chuỗi ban đầu và được đệm thêm với các số 0 vào bên trái sao cho tổng ký tự là width

Cú pháp

Cú pháp của zfill() trong Python:

str.zfill(width)

Chi tiết về tham số:

  • width -- Tổng độ rộng sau khi đã phụ thêm.

Trả về giá trị

Trả về một chuỗi sau khi đã được đệm.

Chương trình Python ví dụ

Ví dụ sau minh họa cách sử dụng của zfill() trong Python.

str = "vi du Python ve chuoi....ok!!!";

 

print str.zfill(40)

print str.zfill(50)

Chạy chương trình Python trên sẽ cho kết quả −

0000000000vi du Python ve chuoi....ok!!!

00000000000000000000vi du Python ve chuoi....ok!!!

40. isdecimal()
Trả về true nếu một chuỗi dạng Unicode chỉ chứa các ký tự thập phân, nếu không là false

Cú pháp

Cú pháp của isdecimal() trong Python:

str.isdecimal()

Chi tiết về tham số:

  • NA

Trả về giá trị

Trả về true nếu một chuỗi dạng Unicode chỉ chứa các ký tự thập phân, nếu không là false.

Chương trình Python ví dụ

Ví dụ sau minh họa cách sử dụng của isdecimal() trong Python.

str = u"nam2015"; 

print str.isdecimal();

 

str = u"6677028";

print str.isdecimal();

Chạy chương trình Python trên sẽ cho kết quả −

False

True