Ví dụ về các bộ được sử dụng trong python như thế nào?

Hướng dẫn về Bộ Python này giải thích cú pháp, Đặc điểm, Phương thức, Hoạt động của Python Set, v.v. với các ví dụ thực tế

Hầu hết chúng ta chắc hẳn đã từng nghiên cứu tập hợp và lý thuyết tập hợp trong toán học tại một thời điểm nào đó trong hành trình học tập của mình. Nếu không, thì đừng lo lắng vì hướng dẫn này sẽ rất dễ hiểu

Trong toán học, chúng ta định nghĩa tập hợp là tập hợp các phần tử riêng biệt tuân theo một quy tắc cụ thể hoặc có điểm chung. Các đối tượng trong tập hợp được gọi là phần tử. Như đã định nghĩa ở trên, điều tương tự cũng xảy ra với Bộ Python

=> Hãy xem Hướng dẫn dành cho người mới bắt đầu Python tại đây

Bạn sẽ học được gì

  • Bộ Python
    • Cú pháp đặt Python
    • Sự khác biệt giữa Set() và Set Literals
      • #1) Cú pháp
      • #2) Khả năng đọc
      • #3) Tốc độ
    • Đặc điểm của bộ Python
    • Sự khác biệt giữa Bộ Python và Danh sách
  • Các phương thức và thao tác đặt trong Python
    • #1) Xác định Tập hợp
    • #2) Truy cập các phần tử tập hợp
    • #3) Thêm vào một Set
    • #4) Đặt tư cách thành viên
    • #5) Loại bỏ các phần tử khỏi một tập hợp
    • #6) Các phép toán
  • Đặt mức độ hiểu
    • Bộ đông lạnh
  • Các câu hỏi thường gặp
  • Sự kết luận
    • đề xuất đọc

Bộ Python

Trong Python, Tập hợp là tập hợp các phần tử riêng biệt và không thay đổi theo thứ tự. Mỗi phần tử là duy nhất và không thể thay đổi. Bản thân một bộ có thể được sửa đổi, tôi. các yếu tố điện tử có thể được thêm vào hoặc loại bỏ

Ví dụ về các bộ được sử dụng trong python như thế nào?

Cú pháp đặt Python

Các Set trong Python có hai cách được xác định, một là sử dụng hàm tạo set() và cách còn lại là Set Literal được biểu thị bằng dấu ngoặc nhọn { }. Như hình bên dưới;

set([iterable])

OR

{obj[,obj,obj,...]}

Sử dụng hàm tạo set(), đối số phải là một đối số có thể lặp lại, chẳng hạn như danh sách, chuỗi, bộ, v.v. Nó tương tự như phương thức list expand() trong đó mỗi mục của iterable được thêm vào Set. Đối số cũng có thể là một tập hợp các lần lặp, tuy nhiên, các lần lặp này phải là bất biến

NB. Dấu ngoặc vuông trong cú pháp đầu tiên ở trên biểu thị rằng hàm tạo set() lấy một đối số có thể lặp lại làm đối số tùy chọn

Ví dụ 1. Xác định Set với hàm tạo set()

>>> a = set() # define empty set, takes in no argument
>>> a
set()
>>> b = set([4,5,3,3,3]) # takes in list as argument
>>> b
{3, 4, 5}
>>> c = set((4,5,3,3,3)) # takes in tuple as argument
>>> c
{3, 4, 5}
>>> d = set('abcaacc') # takes in string as argument
>>> d
{'b', 'c', 'a'}
>>> e = set([(3,4),(2,5)]) # takes in a list of tuples
>>> e
{(2, 5), (3, 4)}

Từ ví dụ trên, chúng ta thấy rằng chỉ cần gọi một hàm tạo set() mà không cần bất kỳ đối số nào để tạo một tập rỗng là đủ. Ngoài ra, chúng tôi đã tạo Bộ từ các lần lặp như danh sách, bộ dữ liệu và chuỗi

Cuối cùng, dòng mã cuối cùng trình bày cách chúng ta có thể tạo Tập hợp từ tập hợp các lần lặp. Lưu ý ở đây rằng các lần lặp phải là bất biến. Nếu chúng ta thay thế các bộ bất biến bằng một đối tượng có thể thay đổi như danh sách, thì TypeError sẽ xuất hiện

Mặt khác, đối với Set Literal, obj bên trong dấu ngoặc nhọn chỉ có thể là bất biến. Ngoài ra, nó tương tự như phương thức List append() sao cho nếu một lần lặp được cung cấp, thì toàn bộ lần lặp đó sẽ được thêm vào toàn bộ tập hợp

Ví dụ 2. Xác định Tập hợp với Tập hợp Chữ

>>> x = {} # this doesn’t generate empty set
>>> x
{}
>>> type(x) # is of type dict
<class 'dict'>
>>> x = {3,4,5,5,4} # takes numbers as argument
>>> x
{3, 4, 5}
>>> z = {(4,3),(4,3)} # takes tuples as arguments
>>> z
{(4, 3)}
>>> i = {'hello'} # takes string as argument
>>> i
{'hello'}

Từ ví dụ trên, chúng tôi nhận thấy rằng Set trống không thể thực hiện được với Set Literals vì thay vào đó, nó sẽ tạo ra một từ điển trống

Ngoài ra, chúng tôi nhận thấy cách các dấu ngoặc nhọn hoạt động như phương thức List append() với đối số chuỗi được truyền cho nó. Trong trường hợp này, chuỗi có thể lặp lại nhưng không giống như hàm tạo set() sẽ gán từng mục của chuỗi cho tập hợp (giống như phương thức List expand()), ký tự tập hợp nối toàn bộ chuỗi vào tập hợp

Sự khác biệt giữa Set() và Set Literals

Cả hàm tạo set() và Set Literals đều có thể được sử dụng để tạo tập hợp. Tuy nhiên, chúng có một số điểm khác biệt đáng để biết

#1) Cú pháp

Như chúng ta đã thấy trước đó trong hướng dẫn này, Set Literals được hình thành bằng cách sử dụng dấu ngoặc nhọn { } và phải có ít nhất một phần tử có thể băm. Nếu trống, thì nó sẽ tạo ra một từ điển trống. Không giống như hàm tạo set() có thể được gọi mà không cần đối số để tạo một tập hợp trống. Tham khảo Ví dụ 1 và 2 để biết các ví dụ về mã mẫu

#2) Khả năng đọc

Biểu diễn chuỗi của một tập hợp luôn sử dụng chú thích dấu ngoặc nhọn ngoại trừ tập hợp trống. Điều này cho thấy Set Literals dễ đọc hơn set() như thế nào. Hãy xem xét ví dụ dưới đây

Ví dụ 3. Kiểm tra khả năng đọc giữa hàm tạo set() và Set Literals

>>> {4,3,6,7} # more readable
{3, 4, 6, 7}
>>> set([4,3,6,7])
{3, 4, 6, 7}
>>> {(4,3),(9,2)} # more readable
{(9, 2), (4, 3)}
>>> set([(4,3),(9,2)])
{(9, 2), (4, 3)}

#3) Tốc độ

Set Literals nhanh hơn gọi hàm tạo set(). Điều này là do nhiều bước liên quan đến hàm tạo set()

Ví dụ; set([3]), trình thông dịch Python cần tra cứu tên tập hợp (LOAD_NAME), sau đó tìm nạp hàm tạo của nó (LOAD_CONST), xây dựng trình lặp . Trong khi đối với Set Literals, như {3}, một mã byte BUILD_SET chuyên biệt được trả về.

Hãy so sánh mã byte cho hàm tạo set() và Set Literal bên dưới

Ví dụ 4. So sánh mã byte giữa hàm tạo set() và Set Literal.

>>> from dis import dis
>>> dis('{3}') # for set literal
  1           0 LOAD_CONST               0 (3)
              2 BUILD_SET                1
              4 RETURN_VALUE
>>> dis('set([3])') # for set constructor
  1           0 LOAD_NAME                0 (set)
              2 LOAD_CONST               0 (3)
              4 BUILD_LIST               1
              6 CALL_FUNCTION            1
              8 RETURN_VALUE

Đặc điểm của bộ Python

Bộ Python có các thuộc tính sau

  • Bộ không có thứ tự. Đó là, các mục trong bộ có thể là bất kỳ mục nào khác;
  • Bộ có thể thay đổi
  • Các bộ có thể chứa các phần tử bất biến của các loại dữ liệu khác nhau

Bộ Python có một vài đặc điểm riêng biệt tách nó khỏi các cấu trúc dữ liệu khác

  • Các bộ không giữ các phần tử trùng lặp
  • Các phần tử trong Tập hợp phải có thể băm được. Có nghĩa là các phần tử trong một tập hợp phải có dữ liệu có thể băm như int, float, string và tuple
  • Bộ không hỗ trợ lập chỉ mục và cắt

Sự khác biệt giữa Bộ Python và Danh sách

Danh sách và Bộ là các kiểu dữ liệu Python tiêu chuẩn lưu trữ giá trị. Tuy nhiên, có một số khác biệt giữa hai loại dữ liệu này

Bảng 1. Sự khác biệt giữa Bộ và Danh sách

SetListLà tập hợp không có thứ tự. Là bộ sưu tập được đặt hàng. Không thể chứa trùng lặp. Có thể chứa các bản sao. Không hỗ trợ lập chỉ mục và cắt. Hỗ trợ lập chỉ mục và cắt lát. Các hoạt động như tư cách thành viên nhanh hơn. chậm hơn

Để biết thêm về Danh sách, hãy xem hướng dẫn Danh sách Python

Các phương thức và thao tác đặt trong Python

Đây là các phương thức hoặc toán tử được sử dụng để thao tác với Tập hợp Python. Trong phần này, chúng ta sẽ xem xét một số phương thức và phép toán có thể được thực hiện trên Sets

#1) Xác định Tập hợp

Một Set được định nghĩa với Set Literals bằng cách chèn các phần tử vào giữa các dấu ngoặc nhọn {…} hoặc với hàm tạo set()

Tham khảo Ví dụ 1 và 2 để biết cách xác định tập hợp bằng hai phương pháp này. Trong phần này, chúng ta sẽ trình bày cách xác định Tập hợp với các phần tử thuộc các kiểu dữ liệu khác nhau

Ví dụ 4. Xác định Tập hợp với các phần tử thuộc các loại dữ liệu khác nhau

>>> a = {(3,4,0,), 'food', 2.65} # initialize with tuple, string and float
>>> a
{2.65, (3, 4, 0), 'food'}

Hãy nhớ rằng chúng tôi đã nói các bộ không có thứ tự?

NB. Đầu ra của bạn có thể trông khác. Đừng bận tâm vì nó không thực sự quan trọng vì Bộ không có thứ tự

#2) Truy cập các phần tử tập hợp

Chúng tôi đã thấy trước đó rằng Bộ không hỗ trợ lập chỉ mục và cắt. Thêm vào đó, Bộ không cung cấp bất kỳ phương thức nào để truy xuất các phần tử riêng lẻ của nó

Người ta có thể lập luận rằng với. pop(), chúng ta có thể lấy một phần tử Set tùy ý. Mục đích của phương pháp này như chúng ta sẽ thấy sau, là loại bỏ một phần tử Tập hợp tùy ý khỏi Tập hợp. Điều đó đang được nói, cách duy nhất là lặp qua Set như hình bên dưới

Ví dụ 5. Lặp qua các phần tử của Tập hợp

x = {3, 4, 6, 2, 8, 0, 2} # define set 

# loop through set and print each element
for i in x:
    print(i)

đầu ra

Ví dụ về các bộ được sử dụng trong python như thế nào?

#3) Thêm vào một Set

Như chúng ta đã thấy trước đó trong hướng dẫn này, các phần tử của Tập hợp phải là bất biến. Tuy nhiên, bản thân Set có thể thay đổi. Có nghĩa là nó có thể phát triển hoặc thu nhỏ kích thước. Các bộ cho phép chúng ta thêm các phần tử mới vào đối tượng của nó thông qua. thêm() và. cập nhật() phương pháp

thêm (phần tử)

Phương thức này thêm một phần tử; . Chỉ cần một đối số yếu tố phải là bất biến

Ví dụ 6. Thêm phần tử vào Set bằng add()

>>> x = {2, 3, 9} #define set
>>> x.add(7) # Add element: 7 
>>> x
{9, 2, 3, 7}
>>> x.add((0,1)) # add a tuple
>>> x
{(0, 1), 2, 3, 7, 9}

Cập nhật(iter1[,inter2,inter3,,…])

Phương thức này thêm các phần tử của các đối số của nó vào Tập hợp. Lưu ý rằng các đối số phải là các đối số có thể lặp lại như chuỗi, từ điển, bộ, danh sách, v.v.

Ví dụ 7. Thêm phần tử trong Set với update()

________số 8

Lưu ý rằng phương thức update() chỉ thêm các phần tử vào Tập hợp không tồn tại trong Tập hợp đó. Thứ hai, nếu từ điển được truyền dưới dạng đối số, thì chỉ các khóa được thêm vào Tập hợp

#4) Đặt tư cách thành viên

Đặt tư cách thành viên có nghĩa là “là một phần tử của” và ký hiệu ? . Ví dụ: x ? .

Trong Python, chúng ta sử dụng toán tử in và not in để kiểm tra tư cách thành viên

Ví dụ 8. Kiểm tra thành viên đã đặt

>>> my_set = {1,2,3,'test','home'}
>>> 'test' in my_set # check if 'test' exist in set
True
>>> 20 in my_set # check if 20 exist in set
False
>>> 1 not in my_set # check if 1 doesn't exist in set
False
>>> 't' not in my_set # check if 't' doesn't exist in set
True

#5) Loại bỏ các phần tử khỏi một tập hợp

Bộ Python cung cấp bốn phương thức có thể được sử dụng để xóa các phần tử khỏi đối tượng của nó. Những phương pháp này là; . Mỗi phương pháp này đều có tính độc đáo của chúng như chúng ta sẽ thấy trong phần này

Ví dụ 9. Xóa phần tử khỏi tập hợp

>>> a = set() # define empty set, takes in no argument
>>> a
set()
>>> b = set([4,5,3,3,3]) # takes in list as argument
>>> b
{3, 4, 5}
>>> c = set((4,5,3,3,3)) # takes in tuple as argument
>>> c
{3, 4, 5}
>>> d = set('abcaacc') # takes in string as argument
>>> d
{'b', 'c', 'a'}
>>> e = set([(3,4),(2,5)]) # takes in a list of tuples
>>> e
{(2, 5), (3, 4)}
0

đầu ra

Ví dụ về các bộ được sử dụng trong python như thế nào?

Trước khi chúng tôi đóng phần này, điều quan trọng cần lưu ý sau đây;

  • Các. phương thức remove(elem) sẽ đưa ra một ngoại lệ KeyError nếu elem không tồn tại trong Tập hợp không giống như. discard(elem) không đưa ra ngoại lệ, nhưng không có gì xảy ra nếu elem không có trong Set
  • Trong tất cả các phương pháp trên, chỉ. pop() xóa và trả về một phần tử tùy ý khỏi tập hợp
  • Các. phương thức clear() loại bỏ tất cả các phần tử khỏi một tập hợp. Một tập rỗng được biểu diễn dưới dạng set() chứ không phải {}

#6) Các phép toán

Thông thường, khi nghe đến Tập hợp, chúng ta nghĩ ngay đến các phép toán như Hợp, Giao, Hiệu, Hiệu đối xứng. Như chúng ta sẽ thấy trong phần này, hầu hết các thao tác này có thể đạt được bằng cả toán tử và phương thức, và được biểu diễn trong biểu đồ Venn

Liên minh đặt

Sự kết hợp của hai hoặc nhiều Bộ được tính bằng. nhà điều hành hoặc. phương thức công đoàn (). Điều này tạo ra một tập hợp mới chứa tất cả các phần tử có trong một trong hai Tập hợp hoặc cả hai Tập hợp. Đối với các phần tử có trong cả hai Bộ, chỉ có một bản sao được duy trì do Bộ không thể chứa các bản sao

Công thức

>>> a = set() # define empty set, takes in no argument
>>> a
set()
>>> b = set([4,5,3,3,3]) # takes in list as argument
>>> b
{3, 4, 5}
>>> c = set((4,5,3,3,3)) # takes in tuple as argument
>>> c
{3, 4, 5}
>>> d = set('abcaacc') # takes in string as argument
>>> d
{'b', 'c', 'a'}
>>> e = set([(3,4),(2,5)]) # takes in a list of tuples
>>> e
{(2, 5), (3, 4)}
1

cú pháp

>>> a = set() # define empty set, takes in no argument
>>> a
set()
>>> b = set([4,5,3,3,3]) # takes in list as argument
>>> b
{3, 4, 5}
>>> c = set((4,5,3,3,3)) # takes in tuple as argument
>>> c
{3, 4, 5}
>>> d = set('abcaacc') # takes in string as argument
>>> d
{'b', 'c', 'a'}
>>> e = set([(3,4),(2,5)]) # takes in a list of tuples
>>> e
{(2, 5), (3, 4)}
2
Ví dụ về các bộ được sử dụng trong python như thế nào?
Đặt biểu đồ Union Venn

Trong sơ đồ trên, Set Union được thể hiện bằng các phần màu xanh lá cây. Vì vậy, mọi thứ trong A, hoặc B hoặc cả hai tạo thành tập hợp

Ví dụ 10. Hợp của các tập hợp

>>> a = set() # define empty set, takes in no argument
>>> a
set()
>>> b = set([4,5,3,3,3]) # takes in list as argument
>>> b
{3, 4, 5}
>>> c = set((4,5,3,3,3)) # takes in tuple as argument
>>> c
{3, 4, 5}
>>> d = set('abcaacc') # takes in string as argument
>>> d
{'b', 'c', 'a'}
>>> e = set([(3,4),(2,5)]) # takes in a list of tuples
>>> e
{(2, 5), (3, 4)}
3

Đặt giao lộ

Đúng như tên gọi của nó, giao điểm giữa các Bộ tạo ra một Bộ mới chỉ chứa các phần tử chung cho cả hai Bộ. Giao điểm của các Tập hợp có thể được tính bằng toán tử & và. phương thức giao nhau()

Công thức

>>> a = set() # define empty set, takes in no argument
>>> a
set()
>>> b = set([4,5,3,3,3]) # takes in list as argument
>>> b
{3, 4, 5}
>>> c = set((4,5,3,3,3)) # takes in tuple as argument
>>> c
{3, 4, 5}
>>> d = set('abcaacc') # takes in string as argument
>>> d
{'b', 'c', 'a'}
>>> e = set([(3,4),(2,5)]) # takes in a list of tuples
>>> e
{(2, 5), (3, 4)}
4

cú pháp

>>> a = set() # define empty set, takes in no argument
>>> a
set()
>>> b = set([4,5,3,3,3]) # takes in list as argument
>>> b
{3, 4, 5}
>>> c = set((4,5,3,3,3)) # takes in tuple as argument
>>> c
{3, 4, 5}
>>> d = set('abcaacc') # takes in string as argument
>>> d
{'b', 'c', 'a'}
>>> e = set([(3,4),(2,5)]) # takes in a list of tuples
>>> e
{(2, 5), (3, 4)}
5
Ví dụ về các bộ được sử dụng trong python như thế nào?
Thiết lập biểu đồ Venn giao lộ

Trong sơ đồ trên, giao điểm Set được thể hiện bằng phần màu xanh lá cây. Vì vậy, mọi thứ chung cho cả A và B tạo nên giao điểm Đặt

Ví dụ 11. Giao của các tập hợp

>>> a = set() # define empty set, takes in no argument
>>> a
set()
>>> b = set([4,5,3,3,3]) # takes in list as argument
>>> b
{3, 4, 5}
>>> c = set((4,5,3,3,3)) # takes in tuple as argument
>>> c
{3, 4, 5}
>>> d = set('abcaacc') # takes in string as argument
>>> d
{'b', 'c', 'a'}
>>> e = set([(3,4),(2,5)]) # takes in a list of tuples
>>> e
{(2, 5), (3, 4)}
6

đầu ra

Ví dụ về các bộ được sử dụng trong python như thế nào?

Trong ví dụ trên, chúng tôi nhận thấy hai phương pháp i. e. giao_cập() và isdisjoint(). Cái trước hoạt động giống như giao điểm () nhưng cập nhật đối tượng Set với giao điểm kết quả Đặt trong khi cái sau kiểm tra xem có giao điểm giữa hai Tập hợp hay không, nó trả về Sai nếu các Bộ giao nhau và True nếu không

Sự khác biệt của Bộ

Sự khác biệt của Bộ được tính bằng toán tử – hoặc. phương pháp chênh lệch (). Một Tập hợp mới được tạo với các phần tử từ Tập hợp đầu tiên không có trong Tập hợp thứ hai

Công thức

>>> a = set() # define empty set, takes in no argument
>>> a
set()
>>> b = set([4,5,3,3,3]) # takes in list as argument
>>> b
{3, 4, 5}
>>> c = set((4,5,3,3,3)) # takes in tuple as argument
>>> c
{3, 4, 5}
>>> d = set('abcaacc') # takes in string as argument
>>> d
{'b', 'c', 'a'}
>>> e = set([(3,4),(2,5)]) # takes in a list of tuples
>>> e
{(2, 5), (3, 4)}
7

cú pháp

>>> a = set() # define empty set, takes in no argument
>>> a
set()
>>> b = set([4,5,3,3,3]) # takes in list as argument
>>> b
{3, 4, 5}
>>> c = set((4,5,3,3,3)) # takes in tuple as argument
>>> c
{3, 4, 5}
>>> d = set('abcaacc') # takes in string as argument
>>> d
{'b', 'c', 'a'}
>>> e = set([(3,4),(2,5)]) # takes in a list of tuples
>>> e
{(2, 5), (3, 4)}
8
Ví dụ về các bộ được sử dụng trong python như thế nào?
Đặt biểu đồ Venn chênh lệch

Trong sơ đồ trên, Set Difference được thể hiện bằng phần màu xanh lá cây. Vì vậy, mọi thứ trong A nhưng không phải trong B tạo nên Sự khác biệt Tập hợp

Ví dụ 12. Hiệu của các tập hợp

>>> a = set() # define empty set, takes in no argument
>>> a
set()
>>> b = set([4,5,3,3,3]) # takes in list as argument
>>> b
{3, 4, 5}
>>> c = set((4,5,3,3,3)) # takes in tuple as argument
>>> c
{3, 4, 5}
>>> d = set('abcaacc') # takes in string as argument
>>> d
{'b', 'c', 'a'}
>>> e = set([(3,4),(2,5)]) # takes in a list of tuples
>>> e
{(2, 5), (3, 4)}
9

Trong ví dụ trên, chúng ta nhận thấy phương thức. Difference_update(). Phương pháp này hoạt động tương tự như. Difference() nhưng cập nhật đối tượng với Set Difference kết quả

Hiệu đối xứng của các tập hợp

Python có một dạng khác của Set Difference gọi là Symmetric Difference. Nó có thể được tính toán bằng toán tử ^ hoặc phương thức symmetric_difference() và nó trả về một Tập hợp chứa tất cả các phần tử trong cả hai Tập hợp ngoại trừ những phần tử chung (giao điểm) cho cả hai Tập hợp

Công thức

>>> x = {} # this doesn’t generate empty set
>>> x
{}
>>> type(x) # is of type dict
<class 'dict'>
>>> x = {3,4,5,5,4} # takes numbers as argument
>>> x
{3, 4, 5}
>>> z = {(4,3),(4,3)} # takes tuples as arguments
>>> z
{(4, 3)}
>>> i = {'hello'} # takes string as argument
>>> i
{'hello'}
0

cú pháp

>>> x = {} # this doesn’t generate empty set
>>> x
{}
>>> type(x) # is of type dict
<class 'dict'>
>>> x = {3,4,5,5,4} # takes numbers as argument
>>> x
{3, 4, 5}
>>> z = {(4,3),(4,3)} # takes tuples as arguments
>>> z
{(4, 3)}
>>> i = {'hello'} # takes string as argument
>>> i
{'hello'}
1
Ví dụ về các bộ được sử dụng trong python như thế nào?
Đặt sơ đồ Venn sai phân đối xứng

Trong sơ đồ trên, Set Symmetric Difference được thể hiện bằng phần màu xanh lá cây. Vì vậy, mọi thứ trong A và B nhưng không phải cả hai tạo thành tập Sự khác biệt đối xứng

Ví dụ 13. Hiệu đối xứng của các tập hợp

>>> x = {} # this doesn’t generate empty set
>>> x
{}
>>> type(x) # is of type dict
<class 'dict'>
>>> x = {3,4,5,5,4} # takes numbers as argument
>>> x
{3, 4, 5}
>>> z = {(4,3),(4,3)} # takes tuples as arguments
>>> z
{(4, 3)}
>>> i = {'hello'} # takes string as argument
>>> i
{'hello'}
2

Trong ví dụ trên, chúng ta nhận thấy phương thức. symmetric_difference_update(). Nó hoạt động giống như. symmetric_difference() nhưng nó cập nhật đối tượng Set với kết quả Set Symmetric Difference

Có một số phương thức và toán tử khác có thể được sử dụng với các tập hợp. Các phương pháp trên chỉ là một số phương pháp thường được sử dụng trong Python

Đặt mức độ hiểu

Bộ có khả năng hiểu Tập hợp giống như Danh sách có khả năng hiểu Danh sách và Từ điển có khả năng hiểu Từ điển và có thể được xây dựng như sau

>>> x = {} # this doesn’t generate empty set
>>> x
{}
>>> type(x) # is of type dict
<class 'dict'>
>>> x = {3,4,5,5,4} # takes numbers as argument
>>> x
{3, 4, 5}
>>> z = {(4,3),(4,3)} # takes tuples as arguments
>>> z
{(4, 3)}
>>> i = {'hello'} # takes string as argument
>>> i
{'hello'}
3

Ví dụ 14

>>> x = {} # this doesn’t generate empty set
>>> x
{}
>>> type(x) # is of type dict
<class 'dict'>
>>> x = {3,4,5,5,4} # takes numbers as argument
>>> x
{3, 4, 5}
>>> z = {(4,3),(4,3)} # takes tuples as arguments
>>> z
{(4, 3)}
>>> i = {'hello'} # takes string as argument
>>> i
{'hello'}
4

Bộ đông lạnh

Frozen Sets có thể được coi là Sets bất biến. Có nghĩa là không giống như Bộ, chúng không thể thay đổi sau khi được tạo, chúng có thể được lồng trong một bộ. Ngoài ra, Frozen Sets có thể băm được. Có nghĩa là chúng có thể được sử dụng làm chìa khóa trong từ điển

NB. Vì Frozen Sets là bất biến, nên chúng hỗ trợ sử dụng các phương thức Set của Python ngoại trừ các phương thức sửa đổi Set inplace

Ví dụ 15

>>> x = {} # this doesn’t generate empty set
>>> x
{}
>>> type(x) # is of type dict
<class 'dict'>
>>> x = {3,4,5,5,4} # takes numbers as argument
>>> x
{3, 4, 5}
>>> z = {(4,3),(4,3)} # takes tuples as arguments
>>> z
{(4, 3)}
>>> i = {'hello'} # takes string as argument
>>> i
{'hello'}
5

Các câu hỏi thường gặp

Q #1) Python có bộ theo thứ tự không?

Câu trả lời. Python không tích hợp Set có thứ tự. Cả Bộ và Bộ đông lạnh đều không có thứ tự. Tuy nhiên, có một Thư viện được sử dụng cho mục đích này. e. thư viện có thứ tự. Nó chứa phương thức đã đặt hàng () có thể được sử dụng để tạo các Tập hợp theo thứ tự

Từ tài liệu

>>> x = {} # this doesn’t generate empty set
>>> x
{}
>>> type(x) # is of type dict
<class 'dict'>
>>> x = {3,4,5,5,4} # takes numbers as argument
>>> x
{3, 4, 5}
>>> z = {(4,3),(4,3)} # takes tuples as arguments
>>> z
{(4, 3)}
>>> i = {'hello'} # takes string as argument
>>> i
{'hello'}
6

Q #2) Set Literals có thể tạo Set trống không?

Câu trả lời. Thật không may, chúng tôi không thể tạo một Tập hợp trống với Tập hợp chữ vì thay vào đó, nó sẽ tạo một từ điển trống. Tuy nhiên, Python có hàm tạo set() có thể được gọi mà không cần đối số để tạo một Tập hợp trống

Q #3) Làm thế nào để bạn biến một danh sách thành Tập hợp trong Python?

Câu trả lời. Để biến một danh sách thành một Tập hợp, chúng ta sử dụng hàm tạo set(). Lưu ý rằng điều này không thể thực hiện được với Sets Literals vì nó không nhận các đối số có thể thay đổi

Sự kết luận

Trong hướng dẫn này, chúng ta đã xem Python Sets là gì từ cú pháp của nó đến việc liệt kê một số phương thức được sử dụng để thao tác với đối tượng của nó như update(), clear(), add(), v.v. và các phép toán chủ yếu được sử dụng trong toán học như Union

Bộ được sử dụng như thế nào trong Python?

Bộ được sử dụng để lưu trữ nhiều mục trong một biến duy nhất . Set là một trong 4 kiểu dữ liệu tích hợp trong Python được sử dụng để lưu trữ các bộ sưu tập dữ liệu, 3 kiểu còn lại là List, Tuple và Dictionary, tất cả đều có chất lượng và cách sử dụng khác nhau. Một bộ là một bộ sưu tập không có thứ tự, không thể thay đổi* và không được lập chỉ mục.

Bộ nào tạo bộ trong Python giải thích bằng ví dụ?

Một tập hợp được tạo bằng cách đặt tất cả các mục (phần tử) bên trong dấu ngoặc nhọn {} , được phân tách bằng dấu phẩy hoặc bằng cách sử dụng hàm set() tích hợp sẵn . Nó có thể có bất kỳ số lượng mục nào và chúng có thể thuộc các loại khác nhau (số nguyên, số float, bộ, chuỗi, v.v. ).

Tại sao các bộ Python hữu ích?

Các bộ Python rất hữu ích để loại bỏ hiệu quả các giá trị trùng lặp khỏi bộ sưu tập như danh sách và để thực hiện các phép toán phổ biến như hợp và giao .

Tại sao thiết lập được sử dụng cho?

Mục đích của bộ là để chứa một bộ sưu tập các đối tượng có liên quan . Chúng quan trọng ở mọi nơi trong toán học bởi vì mọi lĩnh vực toán học đều sử dụng hoặc đề cập đến các tập hợp theo một cách nào đó. Chúng rất quan trọng để xây dựng cấu trúc toán học phức tạp hơn.