Cắt lát chuỗi

Bài 2/5 · khoảng 6 phút đọc

Để lấy một đoạn của chuỗi, dùng cắt lát (slicing) với cú pháp chuoi[bắt_đầu:kết_thúc] — lấy từ vị trí bắt_đầu đến trước vị trí kết_thúc.

Python
tu = "Lập trình Python"
print(tu[0:3])
print(tu[4:9])

Giống range, vị trí kết thúc không được gồm vào.

Bỏ bớt đầu hoặc cuối

  • Bỏ số đầu = bắt đầu từ 0; bỏ số cuối = đến hết chuỗi.
Python
tu = "Python"
print(tu[:2])
print(tu[2:])
print(tu[:])
print(tu[-3:])

Có thể thêm bước nhảy

Python
tu = "0123456789"
print(tu[::2])
print(tu[::-1])

[::2] lấy cách một ký tự; [::-1] lấy ngược → đảo ngược chuỗi.

Ví dụ: kiểm tra đối xứng (palindrome)

Một từ đọc xuôi ngược giống nhau gọi là đối xứng:

Python
tu = input("Nhập một từ: ")
if tu == tu[::-1]:
print("Đối xứng")
else:
print("Không đối xứng")

Cắt lát không báo lỗi khi vượt giới hạn mà chỉ lấy phần có sẵn:

Python
print("abc"[1:100])

Ghi nhớ: s[a:b] lấy từ a đến trước b. Bỏ trống đầu/cuối để lấy từ đầu/đến hết. s[::-1] đảo ngược chuỗi.

`"Python"[1:4]` cho kết quả gì?

"yth" (các vị trí 1, 2, 3).

Cắt lát chuỗi · Lý thuyết Python · PyKid