Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Zip Senarai Bersaiz Berbeza dalam Python Menggunakan Pengulangan Lelaran?

Bagaimana untuk Zip Senarai Bersaiz Berbeza dalam Python Menggunakan Pengulangan Lelaran?

Barbara Streisand
Barbara Streisandasal
2024-10-28 09:27:02984semak imbas

How to Zip Differently Sized Lists in Python Using Iteration Repetition?

Mengzip Senarai Bersaiz Berbeza dengan Ulangan Lelaran

Apabila bekerja dengan senarai dengan panjang yang berbeza-beza, mengezip senarai tersebut bersama-sama boleh menimbulkan cabaran. Fungsi zip() lalai dalam Python memasangkan elemen dari senarai yang lebih pendek dengan yang dari senarai yang lebih panjang, meninggalkan elemen yang tinggal dari senarai yang lebih panjang tidak berpasangan. Untuk menangani had ini, kita boleh memanfaatkan kuasa pengulangan lelaran.

Menggunakan itertools.cycle untuk Pengulangan Lancar

Satu cara berkesan untuk mengulang senarai yang lebih pendek adalah dengan menggunakan fungsi itertools.cycle. Fungsi ini mencipta lelaran yang tidak berkesudahan menggelung melalui unsur-unsur yang boleh diulang, walaupun selepas keletihan. Dengan memasukkan kitaran ke dalam operasi zip kami, kami boleh memastikan senarai yang lebih pendek berulang sehingga senarai yang lebih panjang dilindungi sepenuhnya.

Pelaksanaan Kod

Menggunakan itertools.cycle untuk zip senarai bersaiz berbeza adalah mudah. . Coretan kod berikut menunjukkan pelaksanaannya:

<code class="python">import itertools

A = [1, 2, 3, 4, 5, 6, 7, 8, 9]
B = ["A", "B", "C"]

from itertools import cycle
zip_list = zip(A, cycle(B)) if len(A) > len(B) else zip(cycle(A), B)

for item in zip_list:
    print(item)</code>

Pecahan Output

Melaksanakan kod yang disediakan menghasilkan output berikut:

(1, 'A')
(2, 'B')
(3, 'C')
(4, 'A')
(5, 'B')
(6, 'C')
(7, 'A')
(8, 'B')
(9, 'C')

Seperti yang dapat kita perhatikan, semakin pendek senarai B berulang sehingga semua elemen daripada senarai A yang lebih panjang dipasangkan. Pengulangan yang lancar ini memastikan tiada unsur dibiarkan tidak berpasangan, membolehkan kami melakukan operasi pada keseluruhan senarai tanpa kehilangan data.

Atas ialah kandungan terperinci Bagaimana untuk Zip Senarai Bersaiz Berbeza dalam Python Menggunakan Pengulangan Lelaran?. 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