Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Python – Tìm tất cả vị trí xuất hiện của chuỗi con trong chuỗi

Tìm tất cả các vị trí (chỉ số) nơi chuỗi con xuất hiện trong chuỗi cha. Sử dụng list comprehension và phương thức startswith().

Mã nguồn

my_string = "Python learn code test fun amazing object oriented"
sub_string = "object"

print("Chuỗi gốc:", my_string)
print("Chuỗi con:", sub_string)

my_result = [index for index in range(len(my_string)) if my_string.startswith(sub_string, index)]

print("Các vị trí xuất hiện:", my_result)

Kết quả

Chuỗi gốc: Python learn code test fun amazing object oriented
Chuỗi con: object
Các vị trí xuất hiện: [35]

Giải thích

  • range(len(my_string)) tạo dãy chỉ số từ 0 đến độ dài chuỗi.
  • my_string.startswith(sub_string, index) kiểm tra chuỗi con có bắt đầu tại index không.
  • List comprehension thu thập tất cả chỉ số thỏa mãn.

Lưu ý: Phương pháp này tìm các vị trí chồng chéo (overlapping). Ví dụ: tìm "aa" trong "aaa" sẽ trả về [0, 1].