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

Python - Lọc chuỗi siêu chuỗi (supersequence)

Khi cần lọc các chuỗi là siêu chuỗi (chứa tất cả ký tự của một chuỗi con cho trước), ta dùng list comprehension kết hợp hàm all.

Ví dụ

Minh họa:

my_list = ["Python", "/", "is", "alwaysgreat", "to", "learn"]
print("Danh sách ban đầu:")
print(my_list)
substring = "ys"
my_result = [sub for sub in my_list if all(elem in sub for elem in substring)]
print("Kết quả lọc:")
print(my_result)

Kết quả

Danh sách ban đầu: ['Python', '/', 'is', 'alwaysgreat', 'to', 'learn']
Kết quả lọc: ['alwaysgreat']

Giải thích

  • Định nghĩa danh sách chuỗi và chuỗi con cần kiểm tra.
  • List comprehension duyệt từng chuỗi sub, kiểm tra all(elem in sub for elem in substring).
  • Chỉ giữ lại chuỗi chứa đủ mọi ký tự của substring.
  • In kết quả.