Khi cần trích xuất các số trong danh sách chỉ chứa các chữ số từ một tập cho trước, ta dùng list comprehension và toán tử all().
Ví dụ
my_list = [3345, 2345, 1698, 2475, 1932]
print("Danh sách ban đầu:")
print(my_list)
digit_list = [2, 3, 5, 4]
my_result = [index for index in my_list if all(int(element) in digit_list for element in str(index))]
print("Kết quả:")
print(my_result)
Kết quả
Danh sách ban đầu: [3345, 2345, 1698, 2475, 1932] Kết quả: [3345, 2345]
Giải thích
Định danh sách số và danh sách chữ số cho phép.
List comprehension: chuyển số thành chuỗi, kiểm tra
all(int(ch) in digit_list for ch in str(num)).Chỉ giữ số mà mọi chữ số đều nằm trong digit_list.
In kết quả.