.: Nguoicodonvn2008.info - Cõi lòng người cô đơn :.

https://nguoicodonvn2008.info

Hàm set() trong Python

Hàm set() trong Python

Hàm set trong Python được sử dụng khá phổ biến trong lập trình. Dưới đây là những điều bạn cần biết về set Python.

 

Hàm set() được tích hợp sẵn trong Python , được sử dụng để tạo một đối tượng set từ iterable đã cho. Ở bài viết này, Quantrimang.com sẽ cùng bạn tìm hiểu về set(), cú pháp, tham số và các ví dụ cụ thể. Mời bạn đọc theo dõi.

Dịch vụ sửa chữa đồ điện gia đình

 

Cú pháp hàm set() trong Python

set([iterable])

Tham số của hàm set()

Hàm tạo tập hợp set() trong Python có một tham số duy nhất:

  • iterable (không bắt buộc): đối tượng có thể là string, tuple, set, list, dictionary... hoặc đối tượng lặp iterator.

Giá trị trả về từ set

  • Nếu không truyền tham số, set() sẽ tạo ra một tập hợp trống.
  • Nếu iterable được truyền dưới dạng tham số, nó sẽ tạo một tập hợp các phần tử trong iterable.

Ví dụ 1: Tạo tập hợp từ string, tuple, list, range

# tập hợp rỗng
print(set())

# string
print(set('Python'))

# tuple
# viết bởi Quantrimang.com
print(set(('a', 'e', 'i', 'o', 'u')))

# list
print(set(['a', 'e', 'i', 'o', 'u']))

# range
print(set(range(5)))

Chạy chương trình, kết quả trả về là:

set()
{'P', 'o', 't', 'n', 'y', 'h'}
{'a', 'o', 'e', 'u', 'i'}
{'a', 'o', 'e', 'u', 'i'}
{0, 1, 2, 3, 4}

Ví dụ 2: Tạo tập hợp từ set, dictionary và frozen set

# set
print(set({'a', 'e', 'i', 'o', 'u'}))

# dictionary
# viết bởi Quantrimang.com
print(set({'a':1, 'e': 2, 'i':3, 'o':4, 'u':5}))

# frozen set
frozenSet = frozenset(('a', 'e', 'i', 'o', 'u'))
print(set(frozenSet))

Chạy chương trình ta được kết quả là:

{'a', 'o', 'i', 'e', 'u'}
{'a', 'o', 'i', 'e', 'u'}
{'a', 'o', 'e', 'u', 'i'}

Ví dụ 3: Tạo tập hợp từ đối tượng iterator

class PrintNumber:
    def __init__(self, max):
        self.max = max

    def __iter__(self):
        self.num = 0
        return self

    def __next__(self):
        if(self.num >= self.max):
            raise StopIteration
        self.num += 1
        return self.num

printNum = PrintNumber(5)

# tạo set
# viết bởi Quantrimang.com
print(set(printNum))

Chạy chương trình ta được kết quả là:

{1, 2, 3, 4, 5}

Truy cập các mục

Bạn không thể truy cập các mục trong bộ set bằng cách tham chiếu tới một index hay key.

Thế nhưng, bạn có thể lặp qua các mục được thiết lập bằng cách dùng loop for, hoặc xác nhận xem một giá trị nào đó hiện có nằm trong một set bằng cách dùng từ khóa in.

Ví dụ: Lặp qua set này và in các giá trị:

thisset = {"apple", "banana", "cherry"}

for x in thisset:
  print(x)

Ví dụ: Kiểm tra xem “banana” hiện có nằm trong set này:

thisset = {"apple", "banana", "cherry"}

print("banana" in thisset)

Thay đổi các mục

Sau khi tạo một set, bạn không thể thay đổi các mục của nó nhưng bạn có thể thêm mục mới.

Thêm các mục

Để thêm một mục vào một set, hãy dùng phương thức add().

Ví dụ:

thisset = {"apple", "banana", "cherry"}

thisset.add("orange")

print(thisset)

Thêm set

Để thêm mục từ set khác vào set hiện tại, dùng update(). Ví dụ, thêm các phần tử từ tropical vào thiset:

thisset = {"apple", "banana", "cherry"}
tropical = {"pineapple", "mango", "papaya"}

thisset.update(tropical)

print(thisset)

Các nhóm đóng băng trong Python

Đây là một kiểu dữ liệu tích hợp tương tự như tập hợp nhưng có một điểm khác biệt chính là tính bất biến. Điều này có nghĩa là sau khi tập hợp đóng băng được tạo, người dùng không thể sửa đổi các phần tử của nó, tức là không thể thêm, xóa hoặc thay đổi bất kỳ phần tử nào trong đó. Giống như các tập hợp thông thường, tập hợp đóng băng không thể chứa các phần tử trùng lặp.

Nếu không có tham số nào được truyền vào, nó sẽ trả về một tập hợp đóng băng rỗng.

# Tạo tập hợp đóng băng từ danh sách

fset = frozenset([1, 2, 3, 4, 5])
print(fset)
​
# Tạo tập hợp đóng băng từ một set

set1 = {3, 1, 4, 1, 5}
fset = frozenset(set1)
print(fset)

Kết quả

fozenset({1, 2, 3, 4, 5})
fozenset({1, 3, 4, 5})

Trên đây là những điều cần biết về set trong Python. Như bạn thấy, nó cũng không quá khó sử dụng phải không?

 

Nguồn tin: Quantrimang.com:

Bạn đã không sử dụng Site, Bấm vào đây để duy trì trạng thái đăng nhập. Thời gian chờ: 60 giây