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 traall(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ả.