Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimanakah Modul `itertools` Python Dapat Membantu Mengumpulkan Penyalur Besar untuk Pemprosesan yang Cekap?
Mengumpulkan Iterator dengan itertools Python
Meletup ke atas iterator besar dalam Python boleh menjadi tidak cekap jika anda perlu memproses data dalam bahagian yang lebih kecil. Isu ini timbul apabila berurusan dengan set data intensif memori atau apabila anda ingin mengelak daripada membebankan sistem anda.
Masukkan modul itertools, yang menyediakan set alatan untuk bekerja dengan iterator. Salah satu ciri yang kurang dikenali tetapi sangat berguna ialah keupayaan untuk membatch iterator ke dalam bahagian yang lebih kecil.
itertools.batched()
Fungsi itertools.batched() mengambil iterator dan saiz ketulan sebagai argumen dan mengembalikan lelaran baharu yang menghasilkan tuple elemen daripada iterator asal, dengan setiap tupel mewakili satu kelompok.
Contohnya:
import itertools l = [1, 2, 3, 4, 5, 6, 7] batched_l = itertools.batched(l, 3) for batch in batched_l: print(batch)
OUTPUT:
(1, 2, 3) (4, 5, 6) (7,)
Pilihan Lain
Walaupun itertools.batched() ialah penyelesaian yang paling mudah, ia mungkin tidak memenuhi semua keperluan anda. Jika anda memerlukan lebih kawalan ke atas cara kumpulan dikendalikan, pertimbangkan alternatif berikut:
Atas ialah kandungan terperinci Bagaimanakah Modul `itertools` Python Dapat Membantu Mengumpulkan Penyalur Besar untuk Pemprosesan yang Cekap?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!