Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimanakah Saya Boleh Menjana Semua Gabungan daripada Senarai Senarai dalam Python?

Bagaimanakah Saya Boleh Menjana Semua Gabungan daripada Senarai Senarai dalam Python?

DDD
DDDasal
2024-12-03 14:59:11401semak imbas

How Can I Generate All Combinations from a List of Lists in Python?

Kombinasi Senarai dalam Senarai menggunakan Python

Untuk mendapatkan semua gabungan elemen daripada senarai senarai, kami boleh memanfaatkan Python yang dibina -dalam modul itertools. Khususnya, fungsi produk daripada modul ini menawarkan penyelesaian yang mudah.

Menggunakan itertools.product

Pertimbangkan contoh berikut:

a = [[1,2,3],[4,5,6],[7,8,9,10]]

Untuk menjana semua kemungkinan gabungan elemen daripada senarai ini, kita boleh menggunakan kod berikut:

import itertools

combinations = list(itertools.product(*a))

The output kod ini ialah:

[(1, 4, 7), (1, 4, 8), (1, 4, 9), (1, 4, 10),
 (1, 5, 7), (1, 5, 8), (1, 5, 9), (1, 5, 10),
 (1, 6, 7), (1, 6, 8), (1, 6, 9), (1, 6, 10),
 (2, 4, 7), (2, 4, 8), (2, 4, 9), (2, 4, 10),
 ...
 (3, 6, 8), (3, 6, 9), (3, 6, 10)]

Fungsi itertools.product menggabungkan elemen daripada senarai berbeza dalam cara produk Cartesian, menghasilkan senarai semua kombinasi yang mungkin. Pendekatan ini mudah dan berfungsi dengan berkesan untuk sebarang bilangan senarai input.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menjana Semua Gabungan daripada Senarai Senarai dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn