Set trong Python: làm việc với tập hợp

Set (tập hợp) là kiểu dữ liệu lưu các phần tử không trùng lặp và không có thứ tự. Set đặc biệt mạnh cho việc loại trùng và các phép toán tập hợp.

Tạo set

s = {1, 2, 3, 3, 2}   # {1, 2, 3} - tự loại trùng
rong = set()          # set rỗng (không dùng {})

Ứng dụng phổ biến: loại phần tử trùng

ds = [1, 2, 2, 3, 3, 3]
duy_nhat = list(set(ds))   # [1, 2, 3]

Thêm, xóa

s.add(4)
s.discard(2)   # xóa an toàn (không lỗi nếu không có)

Phép toán tập hợp

a = {1, 2, 3}
b = {2, 3, 4}
a | b   # hợp: {1, 2, 3, 4}
a & b   # giao: {2, 3}
a - b   # hiệu: {1}
a ^ b   # hiệu đối xứng: {1, 4}

Kiểm tra tồn tại — cực nhanh

3 in s   # nhanh hơn nhiều so với list khi dữ liệu lớn

Dùng set khi bạn cần: đảm bảo không trùng lặp, kiểm tra tồn tại nhanh, hoặc thực hiện phép toán tập hợp (chung, riêng, khác biệt). Đây là công cụ tối ưu cho nhiều bài toán thực tế.

Lên đầu trang