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

Python – Lọc các tuple giá trị duy nhất (unique)

Lọc các tuple duy nhất từ danh sách tuple (loại bỏ trùng lặp). Sử dụng set() và list().

Mã nguồn

my_list = [(42, 51), (46, 71), (14, 25), (26, 91), (56, 0), (11, 1), (99, 102)]

print("Danh sách tuple gốc:", my_list)

my_list.sort()
print("Danh sách sau sắp xếp:", my_list)

my_result = list(set(my_list))

print("Kết quả (tuple duy nhất):", my_result)

Kết quả

Danh sách tuple gốc: [(42, 51), (46, 71), (14, 25), (26, 91), (56, 0), (11, 1), (99, 102)]
Danh sách sau sắp xếp: [(11, 1), (14, 25), (26, 91), (42, 51), (46, 71), (56, 0), (99, 102)]
Kết quả (tuple duy nhất): [(11, 1), (26, 91), (42, 51), (46, 71), (56, 0), (14, 25), (99, 102)]

Giải thích

  • set(my_list) loại bỏ các tuple trùng lặp (vì set chỉ giữ giá trị duy nhất).
  • list(...) chuyển ngược lại thành list.
  • Thứ tự phần tử trong kết quả có thể khác do bản chất không có thứ tự của set.

Lưu ý: Nếu cần giữ thứ tự gốc, dùng list(dict.fromkeys(my_list)) (Python 3.7+) hoặc vòng lặp với set kiểm tra đã thấy.