Gabungan Senarai Senarai dalam Python
Dalam pengaturcaraan, menggabungkan elemen daripada berbilang senarai adalah tugas biasa. Soalan ini menumpukan pada penjanaan semua kemungkinan kombinasi item daripada senarai senarai, tanpa mengira saiznya.
Untuk mencapai matlamat ini, pustaka Python menawarkan penyelesaian yang bijak menggunakan fungsi itertools.product. Fungsi ini mengambil bilangan pembolehubah iterable sebagai input dan mengembalikan produk Cartesian, yang pada asasnya menghasilkan semua kemungkinan gabungan elemen daripada setiap lelaran.
Sebagai contoh, mari kita pertimbangkan senarai input senarai: [[1,2] ,3],[4,5,6],[7,8,9,10]].
import itertools a = [[1,2,3],[4,5,6],[7,8,9,10]] combinations = list(itertools.product(*a))
Senarai gabungan yang terhasil akan mengandungi semua kemungkinan gabungan elemen daripada senarai input:
[(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), (2, 5, 7), (2, 5, 8), (2, 5, 9), (2, 5, 10), (2, 6, 7), (2, 6, 8), (2, 6, 9), (2, 6, 10), (3, 4, 7), (3, 4, 8), (3, 4, 9), (3, 4, 10), (3, 5, 7), (3, 5, 8), (3, 5, 9), (3, 5, 10), (3, 6, 7), (3, 6, 8), (3, 6, 9), (3, 6, 10)]
Melalui kuasa itertools.product, menjana kombinasi daripada senarai senarai menjadi operasi ringkas dan elegan dalam Python.
Atas ialah kandungan terperinci Bagaimanakah saya boleh menjana semua kombinasi yang mungkin daripada senarai senarai dalam Python dengan cekap?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!