Bộ Python thêm nhiều

Mô-đun itertools cung cấp một số chức năng hữu ích để tạo các trình vòng lặp để lặp hiệu quả. Bạn có thể sử dụng chức năng chain[] của nó để nối hai hoặc nhiều bộ lại với nhau, như hình bên dưới

1

2

3

4

5

6

7

8

9

10

11

12

nhập công cụ iter

 

if __name__ == '__main__'.

 

    x = {1, 3}

    y = {5}

    z = {7, 9}

 

    s = đặt[itertools.chuỗi[x, y, z]]

 

    in[s]      # {1, 3, 5, 7, 9}

 

Tải xuống Chạy mã

2. Sử dụng Iterable Unpacking Operator

Với Python3. 5, bạn có thể sử dụng toán tử giải nén lặp lại * để nối nhiều bộ. Đây là mã sẽ trông như thế nào

1

2

3

4

5

6

7

8

9

10

if __name__ == '__main__'.

 

    x = {1, 3}

    y = {5}

    z = {7, 9}

 

    s = {*x, *y, *z}

 

    in[s]      # {1, 3, 5, 7, 9}

 

Tải xuống Chạy mã

3. Sử dụng chức năng union[]

Hàm union[] nối tất cả các mục từ một tập hợp này sang tập hợp khác. Bạn có thể sử dụng nó để tham gia nhiều bộ, như hình bên dưới

Cách hiệu quả nhất để tham gia nhiều bộ [được lưu trữ trong danh sách các bộ], sử dụng Python một lớp lót

# Create the list of sets
lst = [{1, 2, 3}, {1, 4}, {2, 3, 5}]

# One-Liner to union a list of sets
print[set[].union[*lst]]
1 để tạo một đối tượng bộ mới, gọi phương thức union[] trên đối tượng mới và giải nén tất cả các bộ từ danh sách các bộ thành

Một tập hợp là một tập hợp duy nhất các phần tử không có thứ tự. Thao tác hợp kết hợp tất cả các phần tử của hai tập hợp thành một tập hợp mới—loại bỏ tất cả các mục nhập trùng lặp trong quy trình

Trong video sau, bạn có thể xem tôi giải thích cách hợp nhất nhiều bộ trong Python

Làm cách nào để kết hợp nhiều bộ trong Python?


Xem video này trên YouTube

Vì vậy, chúng ta hãy đi sâu vào công thức bài toán chính thức, phải không?

Vấn đề. Đưa ra một danh sách hoặc một tập hợp các bộ. Làm cách nào để tham gia các bộ đó bằng thao tác hợp?

Ví dụ. Bạn có một danh sách các tập hợp

# Create the list of sets
lst = [{1, 2, 3}, {1, 4}, {2, 3, 5}]

# One-Liner to union a list of sets
print[set[].union[*lst]]
4 và bạn muốn tính toán công đoàn
# Create the list of sets
lst = [{1, 2, 3}, {1, 4}, {2, 3, 5}]

# One-Liner to union a list of sets
print[set[].union[*lst]]
5

Dung dịch. Để liên kết một danh sách các tập hợp, hãy sử dụng chiến lược sau

  • Tạo một bộ mới bằng hàm tạo
    # Create the list of sets
    lst = [{1, 2, 3}, {1, 4}, {2, 3, 5}]
    
    # One-Liner to union a list of sets
    print[set[].union[*lst]]
    6
  • Gọi phương thức union[] trên đối tượng tập hợp mới
  • Chuyển tất cả các tập hợp dưới dạng đối số vào phương thức union[] bằng cách giải nén danh sách bằng toán tử dấu hoa thị
    {1, 2, 3, 4, 5}
    0
  • Kết quả của phương pháp union[] là một tập hợp mới chứa tất cả các phần tử thuộc ít nhất một trong các tập hợp

Mã số. Đây là mã một lớp kết hợp một bộ sưu tập các bộ

# Create the list of sets
lst = [{1, 2, 3}, {1, 4}, {2, 3, 5}]

# One-Liner to union a list of sets
print[set[].union[*lst]]

Đầu ra của mã này là hợp của ba bộ

{1, 2, 3, 4, 5}
2,
{1, 2, 3, 4, 5}
3,
{1, 2, 3, 4, 5}
4

{1, 2, 3, 4, 5}

Nếu bạn yêu thích Python one-liners, hãy xem cuốn sách mới của tôi “Python One-Liners” [Amazon Link] dạy bạn hiểu thấu đáo về tất cả các dòng mã Python

Hãy tự mình thử. Đây là mã trong trình vỏ mã tương tác chạy mã đó trong trình duyệt của bạn

Tập thể dục. Thay đổi mã để tính giao điểm của các tập hợp trong danh sách

Đi đâu từ đây?

Đủ lý thuyết. Hãy thực hành một số

Các lập trình viên được trả sáu con số trở lên vì họ có thể giải quyết vấn đề hiệu quả hơn bằng cách sử dụng trí thông minh máy móc và tự động hóa

Để trở nên thành công hơn trong việc viết mã, hãy giải quyết nhiều vấn đề thực tế hơn cho người thực. Đó là cách bạn trau dồi những kỹ năng bạn thực sự cần trong thực tế. Rốt cuộc, việc sử dụng lý thuyết học tập mà không ai cần là gì?

Bạn xây dựng các kỹ năng mã hóa có giá trị cao bằng cách làm việc trên các dự án mã hóa thực tế

Bạn có muốn ngừng học với các dự án đồ chơi và tập trung vào các dự án mã thực tế giúp bạn kiếm tiền và giải quyết các vấn đề thực sự cho mọi người không?

🚀 Nếu câu trả lời của bạn là CÓ. , cân nhắc trở thành nhà phát triển Python tự do. Đó là cách tốt nhất để tiếp cận nhiệm vụ cải thiện kỹ năng Python của bạn—ngay cả khi bạn là người mới hoàn toàn

Nếu bạn chỉ muốn tìm hiểu về cơ hội làm việc tự do, vui lòng xem hội thảo trên web miễn phí của tôi “Cách xây dựng kỹ năng Python có thu nhập cao của bạn” và tìm hiểu cách tôi phát triển công việc viết mã của mình trực tuyến cũng như cách bạn có thể làm được—từ sự thoải mái của bạn

Tham gia hội thảo trên web miễn phí ngay bây giờ

Chris

Trong khi làm việc với tư cách là một nhà nghiên cứu trong các hệ thống phân tán, Dr. Christian Mayer tìm thấy tình yêu của mình với việc dạy sinh viên khoa học máy tính

Để giúp sinh viên đạt được mức độ thành công Python cao hơn, anh ấy đã thành lập trang web giáo dục lập trình Finxter. com. Ông là tác giả của cuốn sách lập trình nổi tiếng Python One-Liners [NoStarch 2020], đồng tác giả của loạt sách tự xuất bản Coffee Break Python, người đam mê khoa học máy tính, cộng tác viên tự do và chủ sở hữu của một trong 10 blog Python lớn nhất thế giới

Niềm đam mê của anh ấy là viết, đọc và mã hóa. Nhưng niềm đam mê lớn nhất của anh ấy là phục vụ các lập trình viên đầy tham vọng thông qua Finxter và giúp họ nâng cao kỹ năng của mình. Bạn có thể tham gia học viện email miễn phí của anh ấy tại đây

Chúng ta có thể thêm các phần tử trong tập hợp trong Python không?

Sau khi tạo một bộ, bạn không thể thay đổi các mục trong đó nhưng bạn có thể thêm các mục mới . Để thêm một mục vào một tập hợp, hãy sử dụng phương thức add[].

Bạn có thể thêm các bản sao vào một bộ Python không?

Các tập hợp không được chứa các mục trùng lặp . Các bản sao bị loại bỏ khi khởi tạo một tập hợp. Nếu thêm một phần tử vào một tập hợp và phần tử đó đã được chứa trong tập hợp thì tập hợp sẽ không thay đổi.

Set[] set[] nghĩa là gì trong Python?

Định nghĩa và cách sử dụng . Các mục trong danh sách tập hợp không có thứ tự, vì vậy nó sẽ xuất hiện theo thứ tự ngẫu nhiên. Đọc thêm về bộ trong chương Bộ Python. creates a set object. The items in a set list are unordered, so it will appear in random order. Read more about sets in the chapter Python Sets.

Chủ Đề