Cú pháp cắt (slicing) cho phép xóa ký tự cụ thể hoặc phạm vi ký tự từ chuỗi dựa trên giá trị chỉ mục của các ký tự đó.
Hướng dẫn này thảo luận cách xóa n ký tự đầu tiên từ chuỗi trong Python. Nó đi qua ví dụ cú pháp cắt để bạn học cách dùng trong chương trình.
Python: Chỉ mục chuỗi (String Indexing)
Chuỗi là chuỗi ký tự (sequences of characters). Mỗi ký tự trong chuỗi được cho chỉ mục duy nhất. Số này cho phép xác định và làm việc với ký tự cụ thể hoặc tập hợp ký tự.
Số chỉ mục bắt đầu từ 0 và tăng dần 1 cho mỗi ký tự. Xem chuỗi:
| P | i | e | s | ! |
| 0 | 1 | 2 | 3 | 4 |
Chuỗi chứa năm ký tự. Ký tự đầu "P" có chỉ mục 0. Ký tự cuối ! có chỉ mục 4.
Bạn có thể dùng các số này truy xuất ký tự đơn lẻ hoặc xóa ký tự từ chuỗi.
Xóa n ký tự đầu tiên khỏi chuỗi trong Python
Ở đây, viết chương trình xóa bốn ký tự đầu từ hóa đơn cửa hàng bánh donut. Các ký tự này đại diện ID mua hàng nhưng không còn liên quan do nâng cấp hệ thống.
Đầu tiên, định nghĩa danh sách hóa đơn và danh sách mới lưu hóa đơn mới:
receipts = [
"107 Strawberry donut $2.00",
"297 Blueberry donut $2.10",
"342 Raspberry donut $2.10"
]
new_receipts = []
Ba số đầu là ID mua hàng. Cũng có khoảng trắng theo sau ID bạn muốn xóa.
Dùng vòng lặp "for" lặp qua mỗi hóa đơn để xóa bốn ký tự đầu:
for r in receipts:
new_r = r[4:]
new_receipts.append(new_r)
Mã này xóa bốn ký tự đầu từ mỗi hóa đơn trong danh sách "receipts". Chuỗi mới không có ký tự khớp được gán cho biến "new_r". Bạn làm vậy vì chuỗi bất biến (immutable) và không thể sửa chuỗi hiện có.
Tiếp theo, thêm hóa đơn mới vào danh sách "new_receipts". Cuối cùng, in "new_receipts" ra console xem mã có hoạt động không:
print(new_receipts)
Chạy mã:
['Strawberry donut $2.00', 'Blueberry donut $2.10', 'Raspberry donut $2.10']
Mã xóa thành công bốn ký tự đầu từ mỗi chuỗi gốc.
Nếu muốn xóa nhiều hoặc ít ký tự hơn, thay số 4 bằng số ký tự muốn xóa. Để chỉ xóa hai ký tự đầu:
new_r = r[2:]
Với dòng này, chương trình trả về:
['7 Strawberry donut $2.00', '7 Blueberry donut $2.10', '2 Raspberry donut $2.10']
Kết luận
Bạn có thể xóa n ký tự đầu từ chuỗi dùng cú pháp cắt (slicing). Cú pháp này cho phép truy xuất phần cụ thể của chuỗi dựa trên giá trị chỉ mục cụ thể.
Bây giờ bạn đã có kiến thức dùng slicing xóa ký tự từ đầu chuỗi Python như coder chuyên nghiệp!