Tập hợp (set) là một trong các loại cấu trúc dữ liệu trong Python và có một số đặc điểm quan trọng sau:
- Không chứa các phần tử trùng lặp: Tập hợp không chứa các phần tử trùng lặp; mỗi phần tử trong tập hợp là duy nhất. Điều này giúp loại bỏ dữ liệu trùng lặp một cách tự nhiên.
- Không có thứ tự cụ thể: Tập hợp không duy trì thứ tự của các phần tử. Điều này có nghĩa là bạn không thể truy cập các phần tử bằng chỉ số như trong danh sách (list).
- Thay đổi được (mutable): Tập hợp là một loại cấu trúc dữ liệu thay đổi, có nghĩa là bạn có thể thêm hoặc loại bỏ các phần tử sau khi tạo nó.
Tập hợp (set) là một loại cấu trúc dữ liệu trong Python, được sử dụng để lưu trữ một tập hợp các giá trị duy nhất không có thứ tự. Dưới đây là một số phương thức thường được sử dụng với tập hợp trong Python:
- add(x): Thêm phần tử
x
vào tập hợp. Nếux
đã tồn tại trong tập hợp, thì tập hợp không thay đổi. - update(iterable): Thêm các phần tử từ
iterable
(ví dụ: danh sách, tuple, set) vào tập hợp. Phần tử đã tồn tại sẽ không được thêm và bị bỏ qua. - remove(x): Loại bỏ phần tử
x
khỏi tập hợp. Nếux
không tồn tại trong tập hợp, sẽ gây ra lỗi KeyError. - discard(x): Loại bỏ phần tử
x
khỏi tập hợp. Khác vớiremove()
, nếux
không tồn tại,discard()
sẽ không gây ra lỗi. - pop(): Loại bỏ và trả về một phần tử ngẫu nhiên từ tập hợp. Nếu tập hợp rỗng, sẽ gây ra lỗi KeyError.
- clear(): Xóa tất cả các phần tử trong tập hợp, để lại tập hợp rỗng.
- copy(): Tạo một bản sao của tập hợp.
- union(other_set): Trả về một tập hợp mới chứa tất cả các phần tử từ tập hợp hiện tại và
other_set
(hoặc từ nhiều tập hợp khác). - intersection(other_set): Trả về một tập hợp mới chứa các phần tử mà cả hai tập hợp (
self
vàother_set
) đều chứa. - difference(other_set): Trả về một tập hợp mới chứa các phần tử có trong tập hợp hiện tại (
self
) nhưng không có trongother_set
. - symmetric_difference(other_set): Trả về một tập hợp mới chứa các phần tử không chung của cả hai tập hợp (
self
vàother_set
). - issubset(other_set): Kiểm tra xem tập hợp hiện tại có phải là tập con của
other_set
. - issuperset(other_set): Kiểm tra xem tập hợp hiện tại có chứa
other_set
hay không. - isdisjoint(other_set): Kiểm tra xem tập hợp hiện tại và
other_set
có giao nhau không. Trả vềTrue
nếu không có phần tử nào chung.
Dưới đây là ví dụ về cách sử dụng một số phương thức của tập hợp:
my_set = {1, 2, 3}
my_set.add(4)
print(my_set) # Output: {1, 2, 3, 4}
my_set.update([3, 4, 5])
print(my_set) # Output: {1, 2, 3, 4, 5}
my_set.remove(2)
print(my_set) # Output: {1, 3, 4, 5}
my_set.discard(6) # Không gây lỗi
print(my_set) # Output: {1, 3, 4, 5}
popped = my_set.pop()
print(popped) # Output: 1 (một phần tử ngẫu nhiên được loại bỏ)
my_set.clear()
print(my_set) # Output: set() (tập hợp rỗng)