Hướng dẫn how do you get all the combinations of two lists in python? - làm thế nào để bạn có được tất cả các kết hợp của hai danh sách trong python?
258 Show Mới! Lưu câu hỏi hoặc câu trả lời và sắp xếp nội dung yêu thích của bạn. Tìm hiểu thêm. Tôi gặp khó khăn khi quấn đầu quanh một thuật toán mà tôi cố gắng thực hiện. Tôi có hai danh sách và muốn lấy các kết hợp cụ thể từ hai danh sách. Đây là một ví dụ.
Đầu ra trong trường hợp này sẽ là:
Tôi có thể có nhiều tên hơn số, tức là 1. Đây là một ví dụ với 3 tên và 2 số:
output:
hỏi ngày 17 tháng 10 năm 2012 lúc 13:16Oct 17, 2012 at 13:16
10 Cách đơn giản nhất là sử dụng 2:
Pixelistik 7.3153 Huy hiệu vàng31 Huy hiệu bạc41 Huy hiệu đồng3 gold badges31 silver badges41 bronze badges Đã trả lời ngày 1 tháng 12 năm 2015 lúc 23:57Dec 1, 2015 at 23:57
DridkdridkDrIDK 7.2412 Huy hiệu vàng14 Huy hiệu bạc12 Huy hiệu đồng2 gold badges14 silver badges12 bronze badges 4
Có thể đơn giản hơn cái đơn giản nhất ở trên:
mà không có bất kỳ nhập khẩu Đã trả lời ngày 21 tháng 8 năm 2016 lúc 13:33Aug 21, 2016 at 13:33
logiclogiclogic 2.4091 Huy hiệu vàng11 Huy hiệu bạc 51 gold badge11 silver badges5 bronze badges 5 Lưu ý: Câu trả lời này là cho câu hỏi cụ thể được hỏi ở trên. Nếu bạn ở đây từ Google và chỉ tìm cách để có được một sản phẩm Cartesian ở Python, 2 or a simple list comprehension may be what you are looking for - see the other answers.Giả sử 4. Sau đó, những gì bạn dường như muốn là lấy tất cả các hoán vị có độ dài 5 từ 6 và kết hợp chúng với các mục từ List2. Trong Python:
Trả lại
Hóa đơn 9.0937 Huy hiệu vàng54 Huy hiệu bạc77 Huy hiệu đồng7 gold badges54 silver badges77 bronze badges Đã trả lời ngày 17 tháng 10 năm 2012 lúc 13:35Oct 17, 2012 at 13:35
Interjayinterjayinterjay 103K21 Huy hiệu vàng256 Huy hiệu bạc249 Huy hiệu Đồng21 gold badges256 silver badges249 bronze badges 7 Tôi đã tìm kiếm một danh sách nhân với chính nó chỉ với các kết hợp duy nhất, được cung cấp dưới dạng chức năng này.
Ở đây như một đoạn trích từ các tài liệu Python trên 7 có thể giúp bạn tìm thấy những gì bạn đang tìm kiếm.
Đã trả lời ngày 29 tháng 11 năm 2016 lúc 21:52Nov 29, 2016 at 21:52
ThorsummonerthorsummonerThorSummoner 15.2K14 Huy hiệu vàng130 Huy hiệu bạc138 Huy hiệu đồng14 gold badges130 silver badges138 bronze badges Cách tốt nhất để tìm hiểu tất cả các kết hợp cho số lượng lớn danh sách là: 0Kết quả sẽ là: 1Đã trả lời ngày 24 tháng 7 năm 2019 lúc 9:07Jul 24, 2019 at 9:07
Ishan Rastogiishan RastogiIshan Rastogi 7902 Huy hiệu vàng7 Huy hiệu bạc17 Huy hiệu đồng2 gold badges7 silver badges17 bronze badges 1 Hoặc câu trả lời của KISS cho các danh sách ngắn: 2Không hiệu suất như itertools nhưng bạn đang sử dụng python nên hiệu suất đã không phải là mối quan tâm hàng đầu của bạn ... Tôi cũng thích tất cả các câu trả lời khác! Đã trả lời ngày 29 tháng 7 năm 2019 lúc 17:50Jul 29, 2019 at 17:50
Bạn có thể muốn thử một danh sách một dòng hiểu: 3Đã trả lời ngày 10 tháng 1 năm 2017 lúc 19:26Jan 10, 2017 at 19:26
IdanmelidanmelIdanmel 4725 Huy hiệu bạc12 Huy hiệu Đồng5 silver badges12 bronze badges Một cải tiến nhỏ cho câu trả lời từ Interjay, để làm cho kết quả như một danh sách phẳng. 4Tham khảo từ liên kết này
Đã trả lời ngày 19 tháng 12 năm 2013 lúc 15:02Dec 19, 2013 at 15:02
Zhoumass ZhouMass Zhou 3493 Huy hiệu bạc6 Huy hiệu Đồng3 silver badges6 bronze badges Không có 7 như một danh sách phẳng: 5hoặc trong Python 2:Python 2: 6
Đã trả lời ngày 11 tháng 3 năm 2016 lúc 11:32Mar 11, 2016 at 11:32
user3684792user3684792user3684792 2.4642 Huy hiệu vàng17 Huy hiệu bạc22 Huy hiệu đồng2 gold badges17 silver badges22 bronze badges Trả lời câu hỏi "Đưa ra hai danh sách, tìm tất cả các hoán vị có thể của các cặp một mục từ mỗi danh sách" và sử dụng chức năng Python cơ bản (nghĩa là không có itertools) và do đó, giúp dễ dàng sao chép cho các ngôn ngữ lập trình khác: 7Trả lại 8Hóa đơnMar 11, 2018 at 10:11
9.0937 Huy hiệu vàng54 Huy hiệu bạc77 Huy hiệu đồngcomputerist Đã trả lời ngày 17 tháng 10 năm 2012 lúc 13:358 silver badges9 bronze badges Interjayinterjay 103K21 Huy hiệu vàng256 Huy hiệu bạc249 Huy hiệu Đồng 9Tôi đã tìm kiếm một danh sách nhân với chính nó chỉ với các kết hợp duy nhất, được cung cấp dưới dạng chức năng này. 0Ở đây như một đoạn trích từ các tài liệu Python trên 7 có thể giúp bạn tìm thấy những gì bạn đang tìm kiếm.Aug 5, 2019 at 16:12
Đã trả lời ngày 29 tháng 11 năm 2016 lúc 21:52Steve Alexander Thorsummonerthorsummoner1 gold badge8 silver badges6 bronze badges Làm thế nào để bạn tạo ra tất cả các kết hợp có thể của hai danh sách?Nhập công thức = list1.Expand Out Cột List1 mới và sau đó đóng và tải truy vấn vào bảng. Bảng sẽ có tất cả các kết hợp các mục từ cả hai danh sách và chúng tôi đã lưu trong việc tạo một cột tùy chỉnh trong List1 và tránh sử dụng một truy vấn hợp nhất hoàn toàn! Expand out the new List1 column and then Close & Load the query to a table. The table will have all the combinations of items from both lists and we saved on making a custom column in List1 and avoided using a merge query altogether!
Làm thế nào để bạn có được tất cả các kết hợp của một danh sách trong Python?Để tìm tất cả các kết hợp của một danh sách Python, còn được gọi là một quyền lực, hãy làm theo các bước sau:.. Nhập mô-đun ITERtools tích hợp .. Chỉ định danh sách các mục .. Khởi tạo một danh sách trống để lưu trữ các kết hợp .. Tạo một vòng lặp các giá trị vòng từ 0 đến chiều dài của danh sách + 1 .. Làm thế nào để bạn tính toán có bao nhiêu kết hợp có thể có trong Python?Phương thức Math.com () trả về số cách chọn k kết quả không theo thứ tự từ các khả năng của N, không có sự lặp lại, còn được gọi là kết hợp. comb() method returns the number of ways picking k unordered outcomes from n possibilities, without repetition, also known as combinations.
Làm thế nào để bạn tìm thấy tất cả các kết hợp có thể?Công thức cho các kết hợp là NCR = N!/ r!* (n - r) !, trong đó n đại diện cho số lượng vật phẩm và r đại diện cho số lượng vật phẩm được chọn tại một thời điểm.nCr = n! / r! * (n - r)!, where n represents the number of items, and r represents the number of items being chosen at a time. |