1. Thêm phần tử vào Set trong Python

Sau khi một kiểu Set được khởi tạo, bạn không thể thay đổi các phần tử trong nó, tuy nhiên bạn có thể thêm các phần tử mới vào trong Set.

Kiểu dữ liệu Set trong Python hỗ trợ nhiều phương thức để thêm mới một phần tử vào trong Set. Các phương thức đó là: add(), update()

Ví dụ dưới đây, sử dụng phương thức add() để thêm một phần tử “xe hoi” vào trong Set như sau:

# Khai bao set gom 5 phan tu
setA = {"oto", "xe may", "may bay", "tau dien", "xe dap"}

# Hien thi set ban dau
print("SetA ban dau")
print(setA)

# Them phan tu "xe hoi" vao set bang phuong thuc add()
setA.add("xe hoi")

# Hien thi set sau khi them phan tu
print("SetA sau khi them phan tu")
print(setA)

Kết quả:

SetA ban dau
{‘may bay’, ‘oto’, ‘tau dien’, ‘xe may’, ‘xe dap’}
SetA sau khi them phan tu
{‘may bay’, ‘xe hoi’, ‘oto’, ‘tau dien’, ‘xe may’, ‘xe dap’}

Chú ý: Vì kiểu Set không có thứ tự sắp xếp nên phần tử “xe hoi” mới được thêm vào sẽ nằm ở vị trí ngẫu nhiên trong Set. (Ngoài ra, mỗi lần thực thi lại chương trình trên, các phần tử lại năm ở một vị trí khác nhau)

Vị dụ tiếp theo, sử dụng hàm update() để hợp nhất tất cả các phần tử của setB vào trong setA như sau:

# Khai bao setA va setB
setA = {"oto", "xe may", "may bay", "tau dien", "xe dap"}
setB = {"tau ngam", "xe hoi", "tau hoa", "truc thang"}

# Hien thi setA ban dau
print("SetA ban dau")
print(setA)

# Hien thi setB
print("SetB ban dau")
print(setB)

# Su dung phuong thuc update() de noi setB vao setA
setA.update(setB)

# Hien thi ket qua setA sau khi noi setB
print("SetA sau khi noi them SetB ")
print(setA)

Kết quả:

SetA ban dau
{‘tau dien’, ‘xe may’, ‘xe dap’, ‘may bay’, ‘oto’}
SetB ban dau
{‘truc thang’, ‘xe hoi’, ‘tau hoa’, ‘tau ngam’}
SetA sau khi noi them SetB
{‘tau dien’, ‘tau ngam’, ‘truc thang’, ‘xe hoi’, ‘xe may’, ‘xe dap’, ‘may bay’, ‘tau hoa’, ‘oto’}

2. Kiểm tra phần tử có thuộc Set trong Python

Để kiểm tra xem phần tử có thuộc trong một Set hay không, khi đó ta cần sử dụng đến từ khóa “in”. Trong trường hợp cần kiểm tra phần tử có KHÔNG thuộc một Set hay không ta sẽ cần sử dụng đến từ khóa “not int” có sẵn trong Python.

Ví dụ dưới đây, sử dụng từ khóa “in” để kiểm tra phần tử “may bay” có thuộc trong Set hay không:

# Khai bao set gom 5 phan tu
setA = {"oto", "xe may", "may bay", "tau dien", "xe dap"}

# Neu phan tu "may bay" thuoc set 
if "may bay" in setA:
    # Hien thi thong bao
    print("Phan tu thuoc set")

Kết quả:

Phan tu thuoc set

Hoặc có thể viết ngắn ngọn như sau:

# Khai bao set gom 5 phan tu
setA = {"oto", "xe may", "may bay", "tau dien", "xe dap"}

# Neu phan tu "may bay" thuoc set thi tra ve True
print("may bay" in setA)

Kết quả:

True

Ví dụ tiếp theo, sử dụng từ khóa “not in” để kiểm tra phần tử “tau hoa” có KHÔNG thuộc trong Set hay không:

# Khai bao set gom 5 phan tu
setA = {"oto", "xe may", "may bay", "tau dien", "xe dap"}

# Neu phan tu "tau hoa" khong thuoc set 
if "tau hoa" not in setA:
    # Hien thi thong bao
    print("Phan tu khong thuoc set")

Kết quả:

Phan tu khong thuoc set

Hoặc có thể viết ngắn ngọn như sau:

# Khai bao set gom 5 phan tu
setA = {"oto", "xe may", "may bay", "tau dien", "xe dap"}

# Neu phan tu "tau hoa" khong thuoc set thi tra ve True
print("tau hoa" not in setA)

Kết quả:

True

3. Xóa phần tử thuộc Set trong Python

Để xóa một phần tử trong một Set, hãy sử dụng phương thức có sẵn remove(), hoặc discard() để thực hiện xóa. Ngoài ra bạn cũng có thể sử dụng phương thức pop() để xóa phần tử cuối cùng trong Set và sử dụng phương thức clear() để xóa toàn bộ phần tử trong Set.

Ví dụ sử dụng phương thức remove() để xóa phần tử “xe may” trong Set như sau:

# Khai bao set gom 5 phan tu
setA = {"oto", "xe may", "may bay", "tau dien", "xe dap"}

# Hien thi set ban dau
print("Set ban dau")
print(setA)

# Xoa phan tu "xe may" bang phuong thuc remove()
setA.remove("xe may")

# Hien thi cac phan tu trong set sau khi remove()
print("Set sau khi xoa phan tu")
print(setA)

Ví dụ tiếp theo, sử dụng phương thức discard() để xóa phần tử “xe may” trong Set như sau:

# Khai bao set gom 5 phan tu
setA = {"oto", "xe may", "may bay", "tau dien", "xe dap"}
# Hien thi set ban dau
print("Set ban dau")
print(setA)

# Xoa phan tu "xe may" bang phuong thuc discard()
setA.discard("xe may")

# Hien thi cac phan tu trong set sau khi discard()
print("Set sau khi xoa phan tu")
print(setA)

Kết quả:

Set ban dau
{‘oto’, ‘xe dap’, ‘xe may’, ‘may bay’, ‘tau dien’}
Set sau khi xoa phan tu
{‘oto’, ‘xe dap’, ‘may bay’, ‘tau dien’}

Chú ý: Phương thức remove() sẽ gây ra lỗi nếu phần tử trong Set không tồn tại, tuy nhiên phương thức discard() lại KHÔNG gây ra lỗi nếu phần tử cần xóa trong Set không tồn tại.

Nếu như cần xóa đi phần tử cuối cùng trong Set, ta sẽ sử dụng phương thức pop() như sau:

# Khai bao set gom 5 phan tu
setA = {"oto", "xe may", "may bay", "tau dien", "xe dap"}
# Hien thi set ban dau
print("Set ban dau")
print(setA)

# Xoa phan tu cuoi cung trong set bang phuong thuc pop()
setA.pop()

# Hien thi cac phan tu trong set sau khi pop()
print("Set sau khi xoa phan tu")
print(setA)

Kết quả:

Set ban dau
{‘oto’, ‘xe dap’, ‘xe may’, ‘tau dien’, ‘may bay’}
Set sau khi xoa phan tu
{‘xe dap’, ‘xe may’, ‘tau dien’, ‘may bay’}

Trường hợp cần xóa bỏ tất cả các phần tử có trong Set, phương thức cần sử dụng đó là clear() như sau:

# Khai bao set gom 5 phan tu
setA = {"oto", "xe may", "may bay", "tau dien", "xe dap"}

# Hien thi set ban dau
print("Set ban dau")
print(setA)

# Xoa tat ca phan tu trong set bang phuong thuc clear()
setA.clear()

# Hien thi cac phan tu trong set sau khi pop()
print("Set sau khi xoa phan tu")
print(setA)

Kết quả:

Set ban dau
{‘may bay’, ‘tau dien’, ‘oto’, ‘xe dap’, ‘xe may’}
Set sau khi xoa phan tu
set()