You are on page 1of 65

Lập trình với Python

Chương 5: String
Tài liệu tham khảo
1. Hill, C. (2020). Learning scientific programming with
Python. Cambridge University Press.
2. Stephenson, B. (2019). The Python Workbook 2nd.
Springer.
3. Pine, D. J. (2019). Introduction to Python for science
and engineering. CRC Press.
4. Kong, Q., Siauw, T., & Bayen, A. M. (2021) Python
Programming and Numerical Methods - A Guide for
Engineers and Scientists. Elsevier Inc.
Lập trình Python: Giới thiệu 2
Tạo và lưu chuỗi
• Chuỗi là một kiểu dữ liệu cơ bản có sẵn trong Python. Chúng
bao gồm một hoặc nhiều ký tự được bao quanh bởi dấu nháy
đơn hay dấu nháy kép.
• Hàm str() trả về một chuỗi được coi là một chuỗi không chính
thức hoặc có thể in được biểu diễn của đối tượng đã cho.
• Cú pháp cho hàm str():
str(object)

Lập trình Python: Chuỗi 3


Tạo và lưu chuỗi

Lập trình Python: Chuỗi 4


Tạo và lưu chuỗi

Lập trình Python: Chuỗi 5


Thao tác trên chuỗi
• Trong Python, các chuỗi cũng có thể được nối bằng cách
sử dụng dấu + và toán tử * được sử dụng để tạo chuỗi
lặp lại.

Lập trình Python: Chuỗi 6


Thao tác trên chuỗi

Lập trình Python: Chuỗi 7


Thao tác trên chuỗi

Lập trình Python: Chuỗi 8


Thao tác trên chuỗi
• So sánh chuỗi: Bạn có thể sử dụng (>, <, <=,> =, ==,! =) để
so sánh hai chuỗi dẫn đến kết quả là True hoặc False. Python
so sánh các chuỗi sử dụng giá trị ASCII của các ký tự.
• Các chức năng tích hợp được sử dụng trên chuỗi. Có nhiều
hàm có sẵn mà một chuỗi có thể được truyền dưới dạng đối
số

Lập trình Python: Chuỗi 9


Thao tác trên chuỗi

Lập trình Python: Chuỗi 10


Thao tác trên chuỗi

Lập trình Python: Chuỗi 11


Thao tác trên chuỗi

Lập trình Python: Chuỗi 12


Truy cập các ký tự trong chuỗi
• Mỗi ký tự trong chuỗi chiếm một vị trí trong chuỗi. Ký tự đầu
tiên ở chỉ số 0; ký tự tiếp theo ở chỉ số 1, v.v.
• Độ dài của một chuỗi là số ký tự trong đó. Có thể truy cập mỗi
ký tự trong một chuỗi sử dụng toán tử chỉ số con, tức là dấu
ngoặc vuông.
• Dấu ngoặc vuông được sử dụng để thực hiện lập chỉ số trong
một chuỗi để lấy giá trị tại một chỉ số hoặc vị trí cụ thể.

Lập trình Python: Chuỗi 13


Truy cập các ký tự trong chuỗi
• Phân tích chỉ mục cho chuỗi "be yourself"
được chỉ định cho biến chuỗi word_phrase được hiển thị bên dưới.

• Cú pháp để truy cập một ký tự riêng lẻ trong một chuỗi như được
hiển thị bên dưới.
string_name[index]

Lập trình Python: Chuỗi 14


Truy cập các ký tự trong chuỗi

Lập trình Python: Chuỗi 15


Truy cập các ký tự trong chuỗi

Lập trình Python: Chuỗi 16


Truy cập các ký tự trong chuỗi
• Bạn cũng có thể truy cập các ký tự riêng lẻ trong một chuỗi
bằng cách sử dụng lập chỉ mục phủ định.
• Nếu bạn muốn truy cập các ký tự kết thúc trong chuỗi, thì bạn
có thể đếm ngược từ cuối chuỗi bắt đầu từ số chỉ số −1.
• Bảng phân tích chỉ mục phủ định cho chuỗi "be yourself”
được chỉ định cho biến chuỗi word_phrase được hiển thị bên
dưới.

Lập trình Python: Chuỗi 17


Truy cập các ký tự trong chuỗi

Lập trình Python: Chuỗi 18


Cắt và nối chuỗi
• Cú pháp cắt là một cách tiện dụng để tham chiếu đến các
phần con của chuỗi ký tự trong một chuỗi gốc. Cú pháp
để cắt chuỗi là:

Lập trình Python: Chuỗi 19


Cắt và nối chuỗi

Lập trình Python: Chuỗi 20


Cắt và nối chuỗi

Lập trình Python: Chuỗi 21


Cắt và nối chuỗi

Lập trình Python: Chuỗi 22


Cắt và nối chuỗi
• Các chuỗi có thể được nối với chuỗi join(). Phương thức
join () cung cấp một cách tuyệt vời để nối các chuỗi. Cú
pháp của phương thức join():

Lập trình Python: Chuỗi 23


Cắt và nối chuỗi

Lập trình Python: Chuỗi 24


Cắt và nối chuỗi
• Phương thức split() trả về danh sách các mục chuỗi bằng
cách chia nhỏ chuỗi bằng cách sử dụng chuỗi dấu phân
cách. Cú pháp của phương thức split():

Lập trình Python: Chuỗi 25


Cắt và nối chuỗi

Lập trình Python: Chuỗi 26


Cắt và nối chuỗi
• Các chuỗi là bất biến, nó không thể được sửa đổi. Các
ký tự trong một chuỗi không được thay đổi sau khi một
giá trị chuỗi được gán cho biến chuỗi. Tuy nhiên, bạn có
thể gán các giá trị chuỗi khác nhau cho cùng một biến
chuỗi.
• Chuỗi là một chuỗi các ký tự, mỗi ký tự này có thể được
duyệt qua bằng cách sử dụng vòng lặp for.

Lập trình Python: Chuỗi 27


Cắt và nối chuỗi

Lập trình Python: Chuỗi 28


Cắt và nối chuỗi

Lập trình Python: Chuỗi 29


Cắt và nối chuỗi

Lập trình Python: Chuỗi 30


Cắt và nối chuỗi

Lập trình Python: Chuỗi 31


Cắt và nối chuỗi

Lập trình Python: Chuỗi 32


Cắt và nối chuỗi

Lập trình Python: Chuỗi 33


Cắt và nối chuỗi

Lập trình Python: Chuỗi 34


Phương thức chuỗi
• Bạn có thể nhận được danh sách tất cả các phương thức
được liên kết với chuỗi bằng cách sử dụng hàm dir().

Lập trình Python: Chuỗi 35


Phương thức chuỗi

Lập trình Python: Chuỗi 36


Phương thức chuỗi

Lập trình Python: Chuỗi 37


Phương thức chuỗi

Lập trình Python: Chuỗi 38


Phương thức chuỗi

Lập trình Python: Chuỗi 39


Phương thức chuỗi

Lập trình Python: Chuỗi 40


Phương thức chuỗi

Lập trình Python: Chuỗi 41


Phương thức chuỗi

Lập trình Python: Chuỗi 42


Phương thức chuỗi

Lập trình Python: Chuỗi 43


Phương thức chuỗi

Lập trình Python: Chuỗi 44


Phương thức chuỗi

Lập trình Python: Chuỗi 45


Phương thức chuỗi

Lập trình Python: Chuỗi 46


Phương thức chuỗi

Lập trình Python: Chuỗi 47


Phương thức chuỗi

Lập trình Python: Chuỗi 48


Phương thức chuỗi

Lập trình Python: Chuỗi 49


Định dạng chuỗi
• Python hỗ trợ nhiều cách để định dạng chuỗi văn bản.
Chúng bao gồm định dạng % và str.format().
• Một định dạng chuỗi mới cơ chế được gọi là "f-string"
đang trở nên phổ biến trong cộng đồng Python, được lấy
từ ký tự đứng đầu được sử dụng để biểu thị các chuỗi
như vậy và là viết tắt của "chuỗi định dạng".
• Trong nguồn mã Python, một chuỗi f là một chuỗi theo
nghĩa đen, có tiền tố là 'f', chứa các biểu thức bên trong
dấu ngoặc nhọn {}.
Lập trình Python: Chuỗi 50
Định dạng chuỗi
• Định dạng chuỗi f được thúc đẩy bởi mong muốn có một
cách đơn giản hơn để định dạng chuỗi trong Python.
• Định dạng % bị giới hạn đối với các loại mà nó hỗ trợ.
Chỉ có thể định dạng int, str và double.
• Tất cả các loại khác không được hỗ trợ hoặc chuyển đổi
sang một trong các loại này trước đây định dạng.

Lập trình Python: Chuỗi 51


Định dạng chuỗi

Lập trình Python: Chuỗi 52


Định dạng chuỗi
• Định dạng str.format() đã được thêm vào để giải quyết
một số vấn đề này với %-format. Đặc biệt, nó sử dụng
cú pháp gọi hàm tiêu chuẩn và do đó hỗ trợ nhiều tham
số.
• Tuy nhiên, str.format() không phải là không có vấn đề.
Đứng đầu trong số đó là độ dài. Ví dụ, trong đoạn mã
sau, giá trị văn bản được lặp lại.

Lập trình Python: Chuỗi 53


Định dạng chuỗi

Lập trình Python: Chuỗi 54


Định dạng chuỗi

Lập trình Python: Chuỗi 55


Định dạng chuỗi
• Các mẫu định dạng cũng có thể chứa các biểu thức. Cú
pháp cho thao tác định dạng chuỗi f là:

• String_statement là một chuỗi bao gồm một chuỗi các


ký tự. Trong dấu ngoặc nhọn, bạn chỉ định biến_tên có
giá trị sẽ được hiển thị. Chỉ định giá trị chiều rộng và độ
chính xác là tùy chọn.
• Theo mặc định, các chuỗi được căn trái và các số được
căn phải.
Lập trình Python: Chuỗi 56
Định dạng chuỗi
• Đề cập đến độ chính xác đến tổng số chữ số sẽ được
hiển thị trong một số. Điều này bao gồm số thập phân
trỏ và tất cả các chữ số, tức là trước và sau dấu thập
phân.

Lập trình Python: Chuỗi 57


Định dạng chuỗi

Lập trình Python: Chuỗi 58


Định dạng chuỗi
• Thoát chuỗi là sự kết hợp của dấu gạch chéo ngược (\)
theo sau bởi một chữ cái hoặc một sự kết hợp của các
chữ cái và chữ số. Trình tự thoát còn được gọi là trình tự
điều khiển.
• Ký tự gạch chéo ngược (\) được sử dụng để thoát khỏi ý
nghĩa của các ký tự theo sau nó bằng cách thay thế ý
nghĩa đặc biệt của chúng bằng một cách diễn giải thay
thế. Vì vậy, tất cả đều thoát trình tự bao gồm hai hoặc
nhiều ký tự.
Lập trình Python: Chuỗi 59
Định dạng chuỗi

Lập trình Python: Chuỗi 60


Định dạng chuỗi

Lập trình Python: Chuỗi 61


Định dạng chuỗi

Lập trình Python: Chuỗi 62


Định dạng chuỗi
• Một chuỗi thô được tạo bằng cách ghép trước ký tự r
vào chuỗi. Trong Python, một chuỗi thô bỏ qua tất cả
các kiểu định dạng trong một chuỗi bao gồm các ký tự
thoát.

Lập trình Python: Chuỗi 63


Định dạng chuỗi
• Về cơ bản, máy tính chỉ xử lý các con số. Chúng lưu trữ
các chữ cái và các ký tự khác bằng cách gán một số cho
mỗi cái.
• Unicode có thể được thực hiện bằng các bảng mã ký tự
khác nhau. Chuẩn Unicode định nghĩa các Định dạng
Chuyển đổi Unicode như UTF-8, UTF-16 và UTF-32,
và một số các bảng mã khác đang được sử dụng.

Lập trình Python: Chuỗi 64


Định dạng chuỗi
• Các chuỗi Python thông thường không phải là Unicode:
chúng chỉ là các byte đơn giản. Để tạo một mã Unicode
chuỗi, sử dụng prefx 'u' trên chuỗi ký tự. Ví dụ:

Lập trình Python: Chuỗi 65

You might also like