Search…

Tìm Hiểu về Strings trong Python

09/09/20203 min read
Tìm hiểu về kiểu dữ liệu Strings và các phương thức thao tác trên Strings trong Python.

Giới thiệu

Kiểu dữ liệu strings được xác định khi giá trị được gán cho nó nằm giữa cặp dấu '' hoặc "".

Ví dụ

#!/usr/bin/python
str = 'Hello Python!'
str = "Hello Stdio!"

Các thao tác trên Strings trong Python 

Truy cập một phần tử trong chuỗi

Khi một biến có giá trị là 1 ký tự thì biến đó cũng được xem là một kiểu strings có độ dài là 1.

Sử dụng cặp dấu ngoặc vuông [] để truy cập 1 phần tử trong strings.

Xét ví dụ sau:

#!/usr/bin/python

str = "Hello Stdio!"

print(str[0])
print(str[6:11])
print(str[:5])
print(str[0:])
print(str[::2])

Kết quả in ra màn hình:

H
Stdio
Hello
Hello Stdio!
HloSdo

Giải thích:

  • Dòng 5: Cách để truy cập một ký tự trong chuỗi, ở đây là phần tử thứ nhất tương ứng với index = 0.
  • Dòng 6: Cách trích xuất một chuỗi con, bắt đầu từ phần tử thứ 7 (ứng với index = 6) cho đến phần tử kế trước phần tử thứ 12 (ứng với index = 11).
  • Dòng 7: Index đầu tiên không được khai bào sẽ có giá trị mặc định là 0, trường hợp str1[:5] tương đương với str1[0:5].
  • Dòng 8: Index thứ 2 không được khai báo sẽ có giá trị mặc định là độ dài của chuỗi.
  • Dòng 9: Cách truy xuất chuỗi con có sự tham gia của index thứ 3, index này là bước nhảy khi trích xuất chuỗi con có giá trị mặc định là 1.

Một ví dụ cho trường hợp có sự tham gia của index thứ 3

#!/usr/bin/python

str = "0123456"

print(str[::1])
print(str[::2])
print(str[::3])

Kết quả in ra màn hình:

0123456
0246
036

Ngoài ra, index tham gia vào việc truy cập một chuỗi có thể là một số âm.

Ví dụ

#!/usr/bin/python

str = "Hello Stdio!"

print(str[-1:])
print(str[-6:-1])

Kết quả in ra màn hình:

!
Stdio

Cách để tính vị trí của một index âm là đọc ngược chuỗi lại. Ứng với ký tự cuối cùng sẽ là -1, kế đến ký tự cận kế là -2, ... cứ như vậy đến ký tự đầu chuỗi.

Một số phương thức cơ bản

Strings trong Python cung cấp một số phương thức cơ bản để có thể thao tác nhanh hơn. 

Hàm upper và lower

Hàm upper trả về một chuỗi với các ký tự đều là in hoa ứng với chuỗi ban đầu. Ngược lại với hàm upper là hàm lower.

Ví dụ

#!/usr/bin/python

str = "Hello Stdio!"

print(str.upper())
print(str.lower())

Kết quả in ra màn hình:

HELLO STDIO!
hello stdio!

Hàm len

Hàm len trả về độ dài (hoặc số lượng phần tử) của chuỗi.

Ví dụ

#!/usr/bin/python

str = "Hello Stdio!"

print(len(str))

Kết quả in ra màn hình:

12

Hàm find

Hàm find tìm kiếm vị trí đầu tiên của kí tự được truyền vào làm tham số của find() trong chuỗi đã cho.

Ngoài ra, nó còn có thể tìm 1 chuỗi con, hay là bắt đầu tìm từ vị trí bao nhiêu và kết thúc tại vị trí nào. Nếu không tìm ra giá trị trả về -1.

Ví dụ

#!/usr/bin/python

str = "Hello Stdio!"

print(str.find('l'))
print(str.find('Stdio'))
print(str.find('l', 3, 4))
print(str.find('Hello Python'))

Kết quả in ra màn hình:

2
6
3
-1

Hàm count

Hàm count trả về số lần xuất hiện của một ký tự hoặc một chuỗi con trong chuỗi truyền vào.

Ví dụ

#!/usr/bin/python

str = "Hello Stdio!"

print (str.count('l'))
print (str.count('Stdio'))

Kết quả in ra màn hình:

2
1
IO Stream

IO Stream Co., Ltd

30 Trinh Dinh Thao, Hoa Thanh ward, Tan Phu district, Ho Chi Minh city, Vietnam
+84 28 22 00 11 12
developer@iostream.co

383/1 Quang Trung, ward 10, Go Vap district, Ho Chi Minh city
Business license number: 0311563559 issued by the Department of Planning and Investment of Ho Chi Minh City on February 23, 2012

©IO Stream, 2013 - 2024