2.1 Tập hợp và tính chất của nó
Tập hợp là một kiểu bộ sưu tập dữ liệu đặc biệt trong lập trình, giúp lưu trữ các phần tử duy nhất. Nói cách đơn giản, tập hợp giống như cái rổ chứa các vật không trùng nhau. Nếu bạn cố gắng bỏ vào rổ thứ gì đó đã có sẵn, rổ sẽ bỏ qua hành động đó.
Những đặc điểm chính của tập hợp
Tính duy nhất:
Trong một tập hợp, mỗi phần tử là duy nhất. Nếu bạn thêm phần tử đã có trong tập hợp, nó sẽ không được thêm lại.
Tính không có thứ tự:
Khác với danh sách, các phần tử trong tập hợp không có thứ tự nhất định. Điều này có nghĩa là bạn không thể truy cập phần tử bằng chỉ số.
Tính khả biến:
Bạn có thể thay đổi tập hợp — thêm và xóa các phần tử, nhưng bản thân các phần tử phải là không thay đổi được (ví dụ, số, chuỗi hoặc tuple).
2.2 Tạo tập hợp trong Python
Hãy xem các cách tạo tập hợp trong Python, để bạn có đủ thủ thuật làm việc với chúng.
Sử dụng dấu ngoặc nhọn
Cách phổ biến nhất để tạo một tập hợp là sử dụng dấu ngoặc nhọn {}. Giống như khi làm việc với tuple và danh sách, bạn chỉ cần liệt kê các phần tử bên trong ngoặc:
fruit_set = {"apple", "banana", "cherry"}
print(fruit_set) # Kết quả: {"banana", "cherry", "apple"}
Các phần tử có thể có kiểu khác nhau, nhưng mỗi phần tử phải là duy nhất.
fruit_set = {"apple", 1, 3.25}
print(fruit_set) # Kết quả: {1, "apple", 3.25}
Sử dụng hàm set()
Hàm set() có thể được sử dụng để tạo một tập hợp từ một đối tượng có thể lặp lại khác, ví dụ, danh sách, chuỗi hoặc tuple.
Từ danh sách
list_to_set = set([1, 2, 3, 4, 4, 5])
print(list_to_set) # Kết quả: {1, 2, 3, 4, 5}
Từ chuỗi
string_to_set = set("hello")
print(string_to_set) # Kết quả: {"h", "e", "l", "o"}
Từ tuple
tuple_to_set = set((1, 2, 3, 4, 5))
print(tuple_to_set) # Kết quả: {1, 2, 3, 4, 5}
Từ tập hợp khác
Bạn có thể tạo một tập hợp từ một tập hợp khác, điều này hữu ích để tạo bản sao.
original_set = {"apple", "banana", "cherry"}
new_set = set(original_set)
print(new_set) # Kết quả: {"banana", "cherry", "apple"}
Tập hợp trống
Để tạo một tập hợp trống, dùng hàm set(). Lưu ý rằng sử dụng dấu ngoặc nhọn {} sẽ tạo ra dictionary trống chứ không phải tập hợp.
empty_set = set()
print(empty_set) # Kết quả: set()
2.3 Danh sách các phương thức
Tập hợp trong Python có một loạt các phương thức cho phép quản lý bộ sưu tập dữ liệu hiệu quả. Dưới đây là một số phương thức phổ biến nhất của lớp set:
| Phương thức | Mô tả |
|---|---|
add() |
Thêm một phần tử vào tập hợp |
remove() |
Xóa một phần tử khỏi tập hợp, gây lỗi nếu không có phần tử |
discard() |
Xóa một phần tử khỏi tập hợp, không gây lỗi nếu không có phần tử |
pop() |
Xóa và trả về một phần tử ngẫu nhiên, gây lỗi nếu tập hợp rỗng |
clear() |
Xóa tất cả các phần tử khỏi tập hợp |
union() |
Trả về hợp của các tập hợp |
intersection() |
Trả về giao của các tập hợp |
difference() |
Trả về hiệu của các tập hợp |
symmetric_difference() |
Trả về hiệu đối xứng của các tập hợp |
update() |
Thêm các phần tử từ một tập hợp khác hoặc từ đối tượng có thể lặp lại vào tập hợp hiện tại |
Dưới đây chúng ta sẽ xem chi tiết cách hoạt động của tất cả các phương thức này và hơn nữa.
GO TO FULL VERSION