Hướng dẫn describe the various set operations in python - mô tả các hoạt động tập hợp khác nhau trong python

Hướng dẫn describe the various set operations in python - mô tả các hoạt động tập hợp khác nhau trong python

Nếu bạn là người mới bắt đầu với Python, rất có thể bạn đã bắt gặp các danh sách. Nhưng bạn đã nghe nói về các bộ trong Python chưa?

Trong hướng dẫn này, chúng tôi sẽ khám phá các bộ là gì, làm thế nào để tạo chúng và các hoạt động khác nhau bạn có thể sử dụng trên chúng.

Bộ trong Python là gì?

Trong Python, các bộ giống hệt như các danh sách ngoại trừ thực tế là các yếu tố của chúng là bất biến (điều đó có nghĩa là bạn không thể thay đổi/biến đổi một yếu tố của một tập hợp một lần được khai báo). Tuy nhiên, bạn có thể thêm/xóa các phần tử khỏi tập hợp.

Nếu điều đó thật khó hiểu, hãy để tôi thử và tóm tắt:

Một bộ là một nhóm các yếu tố có thể thay đổi, không có thứ tự, trong đó bản thân các yếu tố là bất biến.

Một đặc điểm khác của một bộ là nó có thể bao gồm các yếu tố của các loại khác nhau. Điều này có nghĩa là bạn có thể có một nhóm các số, chuỗi và thậm chí cả bộ dữ liệu, tất cả trong cùng một bộ!

Cách tạo một bộ

Cách phổ biến nhất để tạo một bộ trong Python là bằng cách sử dụng hàm

>>> third_set = {"Apples", ("Bananas", "Oranges")}
>>> type(third_set)
5 tích hợp.

>>> first_set = set(("Connor", 32, (1, 2, 3)))
>>> first_set
{32, 'Connor', (1, 2, 3)}
>>> 
>>> second_set = set("Connor")
>>> second_set
{'n', 'C', 'r', 'o'}

Bạn cũng có thể tạo các bộ bằng cách sử dụng cú pháp Brace

>>> third_set = {"Apples", ("Bananas", "Oranges")}
>>> type(third_set)
6:

>>> third_set = {"Apples", ("Bananas", "Oranges")}
>>> type(third_set)

Hàm

>>> third_set = {"Apples", ("Bananas", "Oranges")}
>>> type(third_set)
5 có thể sử dụng được và mang lại một danh sách các đối tượng sẽ được chèn vào tập hợp. Cú pháp
>>> third_set = {"Apples", ("Bananas", "Oranges")}
>>> type(third_set)
6 đặt các đối tượng vào tập hợp.

Như bạn có thể nhận ra, cho dù bạn sử dụng hàm

>>> third_set = {"Apples", ("Bananas", "Oranges")}
>>> type(third_set)
5 hay
>>> third_set = {"Apples", ("Bananas", "Oranges")}
>>> type(third_set)
6 để tạo một tập hợp, mỗi phần tử cần phải là một đối tượng bất biến. Vì vậy, nếu bạn thêm một danh sách (là một đối tượng có thể thay đổi) vào một tập hợp, bạn sẽ gặp phải lỗi:

>>> incorrect_set = {"Apples", ["Bananas", "Oranges"]}
Traceback (most recent call last):
  File "", line 1, in 
TypeError: unhashable type: 'list'

Cách thêm hoặc xóa các phần tử trong một tập hợp

Chúng tôi đã biết rằng các bộ là có thể thay đổi. Điều này có nghĩa là bạn có thể thêm/loại bỏ các phần tử trong một tập hợp.

Dưới đây là một ví dụ về việc thêm các thành phần vào một tập hợp bằng hàm

>>> incorrect_set = {"Apples", ["Bananas", "Oranges"]}
Traceback (most recent call last):
  File "", line 1, in 
TypeError: unhashable type: 'list'
1.

>>> add_set = set((1, 2, 3, 4))
>>> add_set
{1, 2, 3, 4}
>>>
>>> add_set.update((1,))
>>> add_set
{1, 2, 3, 4}
>>> add_set.update(("cello", "violin"))
>>> add_set
{1, 2, 3, 4, 'violin', 'cello'}

Nhưng hãy chú ý rằng không có gì thay đổi khi chúng ta cố gắng thêm "cello" vào tập hợp một lần nữa:

>>> add_set.update(("cello",))
>>> add_Set
{1, 2, 3, 4, 'violin', 'cello'}

Điều này là do các bộ trong Python không thể chứa các bản sao. Vì vậy, khi chúng tôi cố gắng thêm

>>> incorrect_set = {"Apples", ["Bananas", "Oranges"]}
Traceback (most recent call last):
  File "", line 1, in 
TypeError: unhashable type: 'list'
2 một lần nữa vào tập hợp, Python nhận ra chúng tôi đã cố gắng thêm một phần tử trùng lặp và không cập nhật tập hợp. Đây là một cảnh báo phân biệt các bộ từ danh sách.

Đây là cách bạn sẽ loại bỏ các phần tử khỏi một tập hợp:

>>> sub_set = add_set
>>> sub_set.remove("violin")
>>> sub_set
{1, 2, 3, 4, 'cello'}

Hàm

>>> incorrect_set = {"Apples", ["Bananas", "Oranges"]}
Traceback (most recent call last):
  File "", line 1, in 
TypeError: unhashable type: 'list'
3 loại bỏ phần tử
>>> incorrect_set = {"Apples", ["Bananas", "Oranges"]}
Traceback (most recent call last):
  File "", line 1, in 
TypeError: unhashable type: 'list'
4 khỏi một tập hợp. Nó trả về
>>> incorrect_set = {"Apples", ["Bananas", "Oranges"]}
Traceback (most recent call last):
  File "", line 1, in 
TypeError: unhashable type: 'list'
5 nếu
>>> incorrect_set = {"Apples", ["Bananas", "Oranges"]}
Traceback (most recent call last):
  File "", line 1, in 
TypeError: unhashable type: 'list'
4 không phải là một phần của tập hợp:

>>> sub_set.remove("guitar")
Traceback (most recent call last):
  File "", line 1, in 
KeyError: 'guitar'

Có một vài cách khác để loại bỏ (các) phần tử khỏi một tập hợp:

  • Phương thức
    >>> incorrect_set = {"Apples", ["Bananas", "Oranges"]}
    Traceback (most recent call last):
      File "", line 1, in 
    TypeError: unhashable type: 'list'
    
    7 sẽ loại bỏ
    >>> incorrect_set = {"Apples", ["Bananas", "Oranges"]}
    Traceback (most recent call last):
      File "", line 1, in 
    TypeError: unhashable type: 'list'
    
    4 khỏi tập hợp, nhưng không gây ra bất kỳ lỗi nào nếu
    >>> incorrect_set = {"Apples", ["Bananas", "Oranges"]}
    Traceback (most recent call last):
      File "", line 1, in 
    TypeError: unhashable type: 'list'
    
    4 không có trong tập hợp.
  • Phương thức
    >>> add_set = set((1, 2, 3, 4))
    >>> add_set
    {1, 2, 3, 4}
    >>>
    >>> add_set.update((1,))
    >>> add_set
    {1, 2, 3, 4}
    >>> add_set.update(("cello", "violin"))
    >>> add_set
    {1, 2, 3, 4, 'violin', 'cello'}
    0 loại bỏ và trả về một phần tử ngẫu nhiên từ tập hợp.
  • Phương thức
    >>> add_set = set((1, 2, 3, 4))
    >>> add_set
    {1, 2, 3, 4}
    >>>
    >>> add_set.update((1,))
    >>> add_set
    {1, 2, 3, 4}
    >>> add_set.update(("cello", "violin"))
    >>> add_set
    {1, 2, 3, 4, 'violin', 'cello'}
    1 loại bỏ tất cả các phần tử khỏi một tập hợp

Dưới đây là một số ví dụ để minh họa:

>>> m_set = set((1, 2, 3, 4))
>>> 
>>> m_set.discard(5) # no error raised even though '5' is not present in the set
>>>
>>> m_set.pop()
4
>>> m_set
{1, 2, 3}
>>>
>>> m_set.clear()
>>> m_set
set()

Nếu bạn nhớ toán học trung học cơ bản của mình, có lẽ bạn sẽ nhớ lại các hoạt động tập toán học như liên minh, giao lộ, sự khác biệt và sự khác biệt đối xứng. Vâng, bạn có thể đạt được điều tương tự với các bộ Python.

1. Đặt Liên minh

Sự kết hợp của hai bộ là tập hợp tất cả các yếu tố của cả hai bộ không có bản sao. Bạn có thể sử dụng phương pháp

>>> add_set = set((1, 2, 3, 4))
>>> add_set
{1, 2, 3, 4}
>>>
>>> add_set.update((1,))
>>> add_set
{1, 2, 3, 4}
>>> add_set.update(("cello", "violin"))
>>> add_set
{1, 2, 3, 4, 'violin', 'cello'}
2 hoặc cú pháp
>>> add_set = set((1, 2, 3, 4))
>>> add_set
{1, 2, 3, 4}
>>>
>>> add_set.update((1,))
>>> add_set
{1, 2, 3, 4}
>>> add_set.update(("cello", "violin"))
>>> add_set
{1, 2, 3, 4, 'violin', 'cello'}
3 để tìm sự kết hợp của bộ Python.

>>> first_set = {1, 2, 3}
>>> second_set = {3, 4, 5}
>>> first_set.union(second_set)
{1, 2, 3, 4, 5}
>>>
>>> first_set | second_set     # using the `|` operator
{1, 2, 3, 4, 5}

2. Đặt giao điểm

Giao điểm của hai bộ là tập hợp tất cả các yếu tố phổ biến của cả hai bộ. Bạn có thể sử dụng phương pháp

>>> add_set = set((1, 2, 3, 4))
>>> add_set
{1, 2, 3, 4}
>>>
>>> add_set.update((1,))
>>> add_set
{1, 2, 3, 4}
>>> add_set.update(("cello", "violin"))
>>> add_set
{1, 2, 3, 4, 'violin', 'cello'}
4 của toán tử
>>> add_set = set((1, 2, 3, 4))
>>> add_set
{1, 2, 3, 4}
>>>
>>> add_set.update((1,))
>>> add_set
{1, 2, 3, 4}
>>> add_set.update(("cello", "violin"))
>>> add_set
{1, 2, 3, 4, 'violin', 'cello'}
5 để tìm giao điểm của bộ Python.

>>> first_set = {1, 2, 3, 4, 5, 6}
>>> second_set = {4, 5, 6, 7, 8, 9}
>>> first_set.intersection(second_set)
{4, 5, 6}
>>>
>>> first_set & second_set     # using the `&` operator
{4, 5, 6}

3. Đặt sự khác biệt

Sự khác biệt giữa hai bộ là tập của tất cả các phần tử trong tập đầu tiên không có trong bộ thứ hai. Bạn sẽ sử dụng phương pháp

>>> add_set = set((1, 2, 3, 4))
>>> add_set
{1, 2, 3, 4}
>>>
>>> add_set.update((1,))
>>> add_set
{1, 2, 3, 4}
>>> add_set.update(("cello", "violin"))
>>> add_set
{1, 2, 3, 4, 'violin', 'cello'}
6 hoặc toán tử
>>> add_set = set((1, 2, 3, 4))
>>> add_set
{1, 2, 3, 4}
>>>
>>> add_set.update((1,))
>>> add_set
{1, 2, 3, 4}
>>> add_set.update(("cello", "violin"))
>>> add_set
{1, 2, 3, 4, 'violin', 'cello'}
7 để đạt được điều này trong Python.

>>> third_set = {"Apples", ("Bananas", "Oranges")}
>>> type(third_set)
0

4. Đặt sự khác biệt đối xứng

Sự khác biệt đối xứng giữa hai bộ là tập của tất cả các phần tử trong tập đầu tiên hoặc tập thứ hai nhưng không phải trong cả hai.

Bạn có lựa chọn sử dụng phương thức

>>> add_set = set((1, 2, 3, 4))
>>> add_set
{1, 2, 3, 4}
>>>
>>> add_set.update((1,))
>>> add_set
{1, 2, 3, 4}
>>> add_set.update(("cello", "violin"))
>>> add_set
{1, 2, 3, 4, 'violin', 'cello'}
8 hoặc toán tử
>>> add_set = set((1, 2, 3, 4))
>>> add_set
{1, 2, 3, 4}
>>>
>>> add_set.update((1,))
>>> add_set
{1, 2, 3, 4}
>>> add_set.update(("cello", "violin"))
>>> add_set
{1, 2, 3, 4, 'violin', 'cello'}
9 để thực hiện điều này trong Python.

>>> third_set = {"Apples", ("Bananas", "Oranges")}
>>> type(third_set)
1

Cách sửa đổi một tập hợp theo hoạt động

Mỗi hoạt động

>>> third_set = {"Apples", ("Bananas", "Oranges")}
>>> type(third_set)
5 mà chúng tôi đã thảo luận ở trên có thể được sử dụng để sửa đổi một bộ Python hiện có. Tương tự như cách bạn sẽ sử dụng cú pháp phân công tăng cường như
>>> add_set.update(("cello",))
>>> add_Set
{1, 2, 3, 4, 'violin', 'cello'}
1 hoặc
>>> add_set.update(("cello",))
>>> add_Set
{1, 2, 3, 4, 'violin', 'cello'}
2 để cập nhật một biến, bạn có thể làm tương tự cho các bộ:

>>> third_set = {"Apples", ("Bananas", "Oranges")}
>>> type(third_set)
2

Các hoạt động khác trong Python

Chúng không quá phổ biến, nhưng chúng hữu ích trong việc xem các bộ liên quan đến người khác như thế nào.

  • Phương pháp
    >>> add_set.update(("cello",))
    >>> add_Set
    {1, 2, 3, 4, 'violin', 'cello'}
    3 hoặc toán tử
    >>> add_set.update(("cello",))
    >>> add_Set
    {1, 2, 3, 4, 'violin', 'cello'}
    4 trả về true nếu
    >>> add_set.update(("cello",))
    >>> add_Set
    {1, 2, 3, 4, 'violin', 'cello'}
    5 là một tập hợp con của
    >>> add_set.update(("cello",))
    >>> add_Set
    {1, 2, 3, 4, 'violin', 'cello'}
    6
  • Phương pháp
    >>> add_set.update(("cello",))
    >>> add_Set
    {1, 2, 3, 4, 'violin', 'cello'}
    7 hoặc toán tử
    >>> add_set.update(("cello",))
    >>> add_Set
    {1, 2, 3, 4, 'violin', 'cello'}
    8 trả về true nếu
    >>> add_set.update(("cello",))
    >>> add_Set
    {1, 2, 3, 4, 'violin', 'cello'}
    5 là siêu sao của
    >>> add_set.update(("cello",))
    >>> add_Set
    {1, 2, 3, 4, 'violin', 'cello'}
    6
  • Phương thức
    >>> sub_set = add_set
    >>> sub_set.remove("violin")
    >>> sub_set
    {1, 2, 3, 4, 'cello'}
    1 trả về true nếu không có phần tử chung giữa các bộ
    >>> add_set.update(("cello",))
    >>> add_Set
    {1, 2, 3, 4, 'violin', 'cello'}
    5 và
    >>> add_set.update(("cello",))
    >>> add_Set
    {1, 2, 3, 4, 'violin', 'cello'}
    6

Bộ đông lạnh trong Python

Bởi vì các bộ có thể thay đổi, chúng không thể vượt qua - điều đó có nghĩa là bạn không thể sử dụng chúng làm khóa từ điển.

Python cho phép bạn làm việc xung quanh việc này bằng cách sử dụng

>>> sub_set = add_set
>>> sub_set.remove("violin")
>>> sub_set
{1, 2, 3, 4, 'cello'}
4 thay thế. Điều này có tất cả các thuộc tính của một tập hợp, ngoại trừ nó là bất biến (điều này có nghĩa là bạn không thể thêm/loại bỏ các phần tử khỏi Frozenset). Nó cũng có thể băm, vì vậy nó có thể được sử dụng làm chìa khóa cho một từ điển.

Kiểu dữ liệu

>>> sub_set = add_set
>>> sub_set.remove("violin")
>>> sub_set
{1, 2, 3, 4, 'cello'}
4 có tất cả các phương thức của một tập hợp (chẳng hạn như
>>> add_set = set((1, 2, 3, 4))
>>> add_set
{1, 2, 3, 4}
>>>
>>> add_set.update((1,))
>>> add_set
{1, 2, 3, 4}
>>> add_set.update(("cello", "violin"))
>>> add_set
{1, 2, 3, 4, 'violin', 'cello'}
6,
>>> sub_set = add_set
>>> sub_set.remove("violin")
>>> sub_set
{1, 2, 3, 4, 'cello'}
7 và
>>> sub_set = add_set
>>> sub_set.remove("violin")
>>> sub_set
{1, 2, 3, 4, 'cello'}
8) nhưng vì nó là bất biến, nên nó không có phương pháp để thêm/xóa các phần tử.

>>> third_set = {"Apples", ("Bananas", "Oranges")}
>>> type(third_set)
3

Và sử dụng

>>> sub_set = add_set
>>> sub_set.remove("violin")
>>> sub_set
{1, 2, 3, 4, 'cello'}
4S làm khóa từ điển đơn giản như 1, 2, 3:

>>> third_set = {"Apples", ("Bananas", "Oranges")}
>>> type(third_set)
4

Gói lên

Đó là nó! Bạn đã tìm hiểu về các bộ là gì, cách tạo và làm việc với chúng và các hoạt động khác nhau mà bạn có thể sử dụng trên chúng.

Với các bộ được thực hiện, bây giờ bạn nên thoải mái với hầu hết các chức năng tích hợp Python. Tất cả những gì bạn cần làm bây giờ là thực hành. Chúc may mắn!

Hãy chắc chắn theo dõi tôi trên Twitter để cập nhật thêm. Có một cái tốt đẹp!



Học mã miễn phí. Chương trình giảng dạy nguồn mở của Freecodecamp đã giúp hơn 40.000 người có được việc làm với tư cách là nhà phát triển. Bắt đầu

Các hoạt động tập hợp trong Python là gì?

Python Set () hoạt động..
Đặt Liên minh. Sự kết hợp của hai bộ là tập hợp tất cả các yếu tố của cả hai bộ không có bản sao. ....
Đặt giao lộ. Giao điểm của hai bộ là tập hợp tất cả các yếu tố phổ biến của cả hai bộ. ....
Đặt sự khác biệt. ....
Đặt sự khác biệt đối xứng ..

Các bộ trong Python giải thích các hoạt động khác nhau trên các bộ với các ví dụ là gì?

Khoa học dữ liệu thực tế bằng cách sử dụng Python trong toán học, một bộ là một tập hợp các đối tượng riêng biệt, được coi là một đối tượng theo cách riêng của nó. Ví dụ, các số 2, 4 và 6 là các đối tượng riêng biệt khi được xem xét riêng biệt, nhưng khi chúng được coi là tập thể, chúng tạo thành một bộ kích thước ba, được viết {2,4,6}.a collection of distinct objects, considered as an object in its own right. For example, the numbers 2, 4, and 6 are distinct objects when considered separately, but when they are considered collectively they form a single set of size three, written {2,4,6}.

Có bao nhiêu loại bộ trong Python?

Trong Python về cơ bản có hai loại bộ.Các bộ và đông lạnh.Loại thiết lập có thể thay đổi, cho dù đông lạnh là bất biến.two types of sets. The set and the frozenset. The set type is mutable, whether the frozenset is immutable.

Các hoạt động danh sách trong Python là gì?

Giới thiệu về các hoạt động danh sách trong Python.Danh sách là một loại phương thức cấu trúc dữ liệu cho phép lưu trữ các số nguyên hoặc các ký tự theo thứ tự được lập chỉ mục bằng cách bắt đầu từ 0. Danh sách hoạt động là các hoạt động có thể được thực hiện trên dữ liệu trong cấu trúc dữ liệu danh sách.the operations that can be performed on the data in the list data structure.