Các lập trình viên Python có một số phương pháp để kết hợp hai bộ thành một. Trong bài đăng trên blog này, chúng ta sẽ khám phá phương pháp thiết lập
A U B = {'Go', 'Python', 'JavaScript', 'R', 'Julia'}
0 và chúng ta sẽ xem xét một số ví dụ về cách sử dụng nó. Chúng tôi cũng sẽ thảo luận về một số lợi ích của việc sử dụng bộ A U B = {'Go', 'Python', 'JavaScript', 'R', 'Julia'}
0 và chúng tôi sẽ xem tại sao đây là công cụ phổ biến dành cho các nhà phát triển PythonCuối cùng, chúng ta sẽ xem xét một số trường hợp sử dụng nâng cao và kiểm tra hiệu quả của bộ
A U B = {'Go', 'Python', 'JavaScript', 'R', 'Julia'}
0. Vậy hãy bắt đầuBạn có biết Python hiện hỗ trợ các câu lệnh chuyển đổi không?
Không cảm thấy như đọc?
Python Set Union - Khái niệm cơ bản
Trong phần này, chúng ta sẽ xem xét định nghĩa cơ bản và cách sử dụng hàm set
A U B = {'Go', 'Python', 'JavaScript', 'R', 'Julia'}
0 trong Python, khám phá cú pháp và giá trị trả về của nóĐịnh nghĩa và cách sử dụng Set Union trong Python
Trước khi chúng ta đi vào một số ví dụ, hãy bắt đầu với những điều cơ bản. Bộ
A U B = {'Go', 'Python', 'JavaScript', 'R', 'Julia'}
0 là gì? . Hàm có thể kết hợp một bộ với nhiều bộ khác hoặc các đối tượng có thể lặp lại của PythonVí dụ: hãy xem hai tập hợp sau - A và B
Tính toán một liên kết giữa các tập hợp này có nghĩa là chúng tôi muốn tạo một tập hợp mới có tất cả các phần tử riêng biệt từ cả hai
Bộ Python
A U B = {'Go', 'Python', 'JavaScript', 'R', 'Julia'}
0 thường được biểu diễn bằng sơ đồ Venn. Đây là những gì nó sẽ trông giống nhưTập hợp bên trái có các phần tử R và Julia không có trong tập hợp bên phải. Tương tự như vậy, tập hợp bên phải có JavaScript và Go là các phần tử riêng biệt. Có một yếu tố chung cho cả hai bộ - Python
Ghi nhớ. Nếu một mục có mặt trong nhiều bộ, tập hợp kết quả sẽ chỉ liệt kê mục đó một lần
Cú pháp của Set Union trong Python
# Combine two sets
set1.union[set2]
# Combine multiple sets
set1.union[set2, set3, ...]
Ở đâu
6- Iterable để hợp nhất vớiA U B = {'Go', 'Python', 'JavaScript', 'R', 'Julia'}
7,A U B = {'Go', 'Python', 'JavaScript', 'R', 'Julia'}
8 - [Các] bộ tùy chọn, các lần lặp khác để thống nhất vớiA U B = {'Go', 'Python', 'JavaScript', 'R', 'Julia'}
Giá trị trả về của Set Union trong Python
Hàm set
A U B = {'Go', 'Python', 'JavaScript', 'R', 'Julia'}
0 trong Python trả về một tập hợp mới là sự kết hợp của tất cả các tập hợp với tập hợp đầu tiên - nhưng chỉ khi [các] tập hợp hoặc [các] đối tượng có thể lặp lại được truyền cho hàm A U B = {'Go', 'Python', 'JavaScript', 'R', 'Julia'}
0Nếu không có đối số nào được chuyển vào hàm
A U B = {'Go', 'Python', 'JavaScript', 'R', 'Julia'}
0, một bản sao của tập hợp sẽ được trả vềVí dụ về hàm liên kết tập hợp trong Python
Chúng tôi sẽ khai báo hai bộ, giống như trên các hình ảnh trên
32 - Chứa các ngôn ngữ lập trình được sử dụng trong khoa học dữ liệuA U B = {'Go', 'Python', 'JavaScript', 'R', 'Julia'}
33 - Chứa các ngôn ngữ lập trình được sử dụng trong phát triển webA U B = {'Go', 'Python', 'JavaScript', 'R', 'Julia'}
Một số ngôn ngữ lập trình có thể hoán đổi cho nhau, như Python, vì vậy nó có mặt trong cả hai bộ. Nó chỉ nên được in một lần, như chúng ta đã thấy trước đây
A U B = {'Go', 'Python', 'JavaScript', 'R', 'Julia'}
5đầu ra
A U B = {'Go', 'Python', 'JavaScript', 'R', 'Julia'}
Nếu bạn không chỉ định bất kỳ tham số nào cho hàm
A U B = {'Go', 'Python', 'JavaScript', 'R', 'Julia'}
0 của bộ Python, thì bộ này sẽ được sao chépA U B = {'Go', 'Python', 'JavaScript', 'R', 'Julia'}
3đầu ra
A U B = {'Go', 'Python', 'JavaScript', 'R', 'Julia'}
9Bạn có thể xác minh nó đã được sao chép bằng cách in địa chỉ bộ nhớ của nó
A U B = {'Go', 'Python', 'JavaScript', 'R', 'Julia'}
0đầu ra
A U B = {'Go', 'Python', 'JavaScript', 'R', 'Julia'}
1Bạn sẽ không thấy các giá trị giống hệt nhau và đó không phải là vấn đề. Điều quan trọng là chúng khác nhau, cho biết tập hợp đã được sao chép sang một địa chỉ bộ nhớ khác
Bây giờ chúng ta hãy khám phá một cách ngắn hơn để có được sự kết hợp của nhiều bộ
Python Set Union bằng cách sử dụng. Nhà điều hành
Không cần phải gọi hàm Python set
A U B = {'Go', 'Python', 'JavaScript', 'R', 'Julia'}
0 mỗi lần. Thay vào đó, bạn có thể sử dụng toán tử đường ống [A U B = {'Go', 'Python', 'JavaScript', 'R', 'Julia'}
36]A U B = {'Go', 'Python', 'JavaScript', 'R', 'Julia'}
4đầu ra
A U B = {'Go', 'Python', 'JavaScript', 'R', 'Julia'}
Mọi thứ khác vẫn giữ nguyên. Cách tiếp cận này nhỏ gọn và dễ đọc hơn cách đầu tiên, ít nhất là nếu bạn đang kết hợp hai bộ
Các ví dụ nâng cao về tập hợp Python
Bây giờ chúng ta sẽ xem xét một số ví dụ về liên kết "nâng cao" và các trường hợp sử dụng
- Nhiều đối số được đặt
- Đặt cập nhật so với. thiết lập công đoàn
- Liên kết Python trên các đối tượng có thể lặp lại
Nhiều Set Arguments
Bạn có thể kết hợp một bộ với nhiều bộ. Chúng tôi sẽ khai báo một bộ khác chứa các ngôn ngữ lập trình được sử dụng trong tính toán khoa học và tính toán sự kết hợp của cả ba
Phép tính hoạt động cả bằng cách sử dụng cú pháp thông thường và cú pháp đường ống tốc ký
A U B = {'Go', 'Python', 'JavaScript', 'R', 'Julia'}
6đầu ra
A U B = {'Go', 'Python', 'JavaScript', 'R', 'Julia'}
50Đặt Cập nhật so với. liên hiệp
Bạn có thể thực hiện thao tác hợp trong Python với cả
A U B = {'Go', 'Python', 'JavaScript', 'R', 'Julia'}
37 và A U B = {'Go', 'Python', 'JavaScript', 'R', 'Julia'}
38. Cái đầu tiên thêm tất cả các phần tử còn thiếu vào tập hợp mà nó được gọi và trả về A U B = {'Go', 'Python', 'JavaScript', 'R', 'Julia'}
39, trong khi cái sau tạo và trả về một tập hợp mớiĐây là cách hoạt động của
A U B = {'Go', 'Python', 'JavaScript', 'R', 'Julia'}
37A U B = {'Go', 'Python', 'JavaScript', 'R', 'Julia'}
51đầu ra
A U B = {'Go', 'Python', 'JavaScript', 'R', 'Julia'}
52Như bạn có thể thấy, quá trình cập nhật diễn ra tại chỗ. Bạn không thể lưu kết quả của thao tác cập nhật vào một bộ mới, vì vậy hãy ghi nhớ điều đó
A U B = {'Go', 'Python', 'JavaScript', 'R', 'Julia'}
53đầu ra
A U B = {'Go', 'Python', 'JavaScript', 'R', 'Julia'}
54Liên minh Python trên các đối tượng có thể lặp lại
Bạn có thể gọi hàm
A U B = {'Go', 'Python', 'JavaScript', 'R', 'Julia'}
0 trên bộ Python và cung cấp bất kỳ đối tượng có thể lặp nào làm đối số - đây là ví dụ cho danh sách PythonA U B = {'Go', 'Python', 'JavaScript', 'R', 'Julia'}
55đầu ra
A U B = {'Go', 'Python', 'JavaScript', 'R', 'Julia'}
56Ghi nhớ. Bạn không thể sử dụng toán tử đường ống tốc ký
A U B = {'Go', 'Python', 'JavaScript', 'R', 'Julia'}
57đầu ra
Bạn cũng không thể sử dụng bất cứ thứ gì ngoài Python được đặt trước - vì không có loại dữ liệu nào khác có hàm
A U B = {'Go', 'Python', 'JavaScript', 'R', 'Julia'}
0A U B = {'Go', 'Python', 'JavaScript', 'R', 'Julia'}
58đầu ra
Câu chuyện dài - Bạn luôn phải sử dụng hàm
A U B = {'Go', 'Python', 'JavaScript', 'R', 'Julia'}
0 thay vì toán tử đường ống và bạn phải gọi hàm trên một tập hợpHiệu suất của Python Set Union [Độ phức tạp về thời gian]
Bây giờ chúng ta sẽ phân tích độ phức tạp về thời gian của thao tác set union trong Python. Tôi đã tìm thấy mã nguồn tại blog Finxter và đã sửa đổi một chút. Để tóm tắt
- Độ phức tạp về thời gian trên tập hợp có n phần tử và tập đối số có m phần tử là O[n + m]
- Chèn một phần tử vào tập hợp có độ phức tạp là O[1]
Đây là mã Python tính toán và hiển thị một con số có kích thước đã đặt trên trục X và thời gian chạy tính bằng giây trên trục Y. Tôi đã chạy mã trên M1 Pro MacBook Pro 16"
A U B = {'Go', 'Python', 'JavaScript', 'R', 'Julia'}
59đầu ra
Sự kết luận
Python set union rất dễ hiểu. Chúng tôi đã xem qua định nghĩa và trực giác, đồng thời từ từ xây dựng cách hiểu các trường hợp sử dụng phức tạp hơn. Bạn phải thừa nhận - ngay cả phần nâng cao cũng dễ hiểu
Tôi hy vọng rằng bài viết này đã giúp bạn hiểu rõ hơn về hàm hợp tập hợp trong Python. Như mọi khi, nếu bạn có bất kỳ câu hỏi hoặc nhận xét nào, vui lòng hỏi trong phần bình luận bên dưới. Mã hóa vui vẻ