Khi cần lấy tất cả vị trí xuất hiện của chuỗi con (substring) từ danh sách chuỗi, dùng list comprehension đơn giản và phương thức startswith.
Ví dụ
Minh họa dưới đây:
my_string = "Is python fun to learn?"
print("Danh sách là:")
print(my_string)
substring = "pyt"
print("Chuỗi con là:")
print(substring)
my_result = [i for i in range(len(my_string)) if my_string.startswith(substring, i)]
print("Kết quả là:")
print(my_result)
Kết quả
Danh sách là: Is python fun to learn? Chuỗi con là: pyt Kết quả là: [3]
Giải thích
- Định nghĩa chuỗi và hiển thị ra console.
- Định nghĩa chuỗi con khác và hiển thị ra console.
- Dùng list comprehension lặp qua chuỗi.
- Dùng phương thức
startswithkiểm tra chuỗi có bắt đầu bằng pattern/con chuỗi cụ thể không. - Nếu đúng, thêm vào biến sau chuyển thành list.
- Hiển thị đầu ra trên console.