Kết hợp danh sách Python

Python cung cấp các phương thức trực tiếp để tìm các hoán vị và tổ hợp của một dãy. Các phương thức này có trong gói itertools

Hoán vị

Đầu tiên hãy nhập gói itertools để triển khai phương thức hoán vị trong python. Phương thức này lấy một danh sách làm đầu vào và trả về một danh sách đối tượng gồm các bộ chứa tất cả các hoán vị ở dạng danh sách.
 

Python3




[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
36

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
37

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
38
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
39
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
0
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
1

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
2

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
2

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
4

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
5
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
6
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
7
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
8
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
9
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
00
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
9
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
02
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
03

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
2

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
05

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
06
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
07
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
08
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
09
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
00

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
01
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
02
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
03

đầu ra.  

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
4

Nó tạo ra n. hoán vị nếu độ dài của chuỗi đầu vào là n.
Nếu muốn  nhận các hoán vị có độ dài L thì hãy thực hiện theo cách này.
 

Python3




[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
36

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
05

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
38
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
39
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
0
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
1

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
2

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
91

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
92

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
5
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
6
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
7
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
8
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
9
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
00
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
9
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
02
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
91
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
00
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
93

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
2

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
05

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
06
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
07
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
08
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
09
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
00

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
01
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
02
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
03

đầu ra.  

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]

Nó tạo ra nCr * r. hoán vị nếu độ dài của chuỗi đầu vào là n và tham số đầu vào là r

Sự phối hợp

Phương thức này lấy một danh sách và một đầu vào r làm đầu vào và trả về một danh sách đối tượng gồm các bộ chứa tất cả các kết hợp có thể có của độ dài r trong một dạng danh sách.
 

Python3




[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
36

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
365

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
38
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
39
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
0
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
369

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
2

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
371

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
372

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
373
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
6
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
375
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
8
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
9
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
00
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
9
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
02
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
91
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
00
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
383

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
2

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
385

________ 106 ________ 107 ________ 108 ________ 109 ________ 1390

________ 101 ________ 102 ________ 1393

đầu ra.  

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
0

 

1. Các kết hợp được phát ra theo thứ tự sắp xếp từ điển của đầu vào. Vì vậy, nếu danh sách đầu vào được sắp xếp, các bộ dữ liệu kết hợp sẽ được tạo theo thứ tự đã sắp xếp.
 

Python3




[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
36

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
395

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
38
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
39
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
0
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
399

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
2

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
01

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
92

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
373
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
6
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
375
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
8
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
9
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
00
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
9
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
02
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
91
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
00
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
93

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
2

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
15

________ 106 ________ 107 ________ 108 ________ 109 ________ 020

________ 101 ________ 102 ________ 1393

đầu ra.  

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
0

 

2. Các yếu tố được coi là duy nhất dựa trên vị trí của chúng, không dựa trên giá trị của chúng. Vì vậy, nếu các phần tử đầu vào là duy nhất, sẽ không có giá trị lặp lại trong mỗi kết hợp.
 

Python3




[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
24

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
25

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
38
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
39
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
0
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
399

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
2

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
31

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
92

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
373
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
6
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
375
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
00
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
9
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
8
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
9
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
02
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
91
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
00
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
93

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
2

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
15

________ 106 ________ 107 ________ 108 ________ 109 ________ 020

________ 101 ________ 102 ________ 1393

đầu ra.  

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
9

 

3. Nếu chúng ta muốn tạo sự kết hợp của cùng một phần tử với cùng một phần tử thì chúng ta sử dụng tổ hợp_with_replacement.
 

Python3




[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
24

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
55

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
56

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
38
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
39
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
0
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
60

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
2

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
62

[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
373
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
6
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
65
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
8
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
9
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
00
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
9
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
02
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
91
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
00
[1, 2]
[1, 3]
[2, 1]
[2, 3]
[3, 1]
[3, 2]
93

Làm cách nào để có được tất cả các kết hợp có thể có của hai danh sách trong Python?

Sự kết hợp duy nhất của hai danh sách trong Python có thể được hình thành bằng cách ghép từng phần tử của danh sách đầu tiên với các phần tử của danh sách thứ hai. Phương pháp 1. Sử dụng hoán vị[] của gói itertools và hàm zip[] . Tiếp cận. Nhập gói itertools và khởi tạo list_1 và list_2.

Làm cách nào để tạo tất cả các kết hợp có thể có của các mục từ một danh sách?

Để liệt kê tất cả các kết hợp có thể có trong trang tính Excel, hãy làm theo quy trình sau; .
Bước 1. mở trang tính. Trước tiên, bạn cần mở trang tính có dữ liệu mà bạn muốn thực hiện tất cả các kết hợp có thể. .
Bước 2. Chọn ô cho kết quả. .
Bước 3. Kéo công thức đến các ô khác

Làm cách nào để tạo tất cả các kết hợp có thể có của các mục từ hai danh sách?

Nhập công thức =List1. Mở rộng cột List1 mới rồi Đóng & Tải truy vấn vào bảng . Bảng sẽ có tất cả các tổ hợp mục từ cả hai danh sách và chúng tôi đã lưu khi tạo một cột tùy chỉnh trong List1 và tránh sử dụng truy vấn hợp nhất hoàn toàn.

Làm cách nào để in tất cả các kết hợp có thể có của một mảng trong Python?

combinations[] bằng Python để in tất cả các kết hợp có thể. Cho một mảng kích thước n, tạo và in tất cả các tổ hợp có thể có của r phần tử trong mảng.

Chủ Đề