Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimanakah Saya Boleh Mengulang Sepasang Item Berturut-turut dalam Senarai Python Menggunakan Iterator Terbina?

Bagaimanakah Saya Boleh Mengulang Sepasang Item Berturut-turut dalam Senarai Python Menggunakan Iterator Terbina?

Susan Sarandon
Susan Sarandonasal
2024-11-16 07:37:03888semak imbas

How Can I Iterate Over Pairs of Consecutive Items in a Python List Using Builtin Iterators?

Lelaran Pada Pasangan Item Senarai Berturut-turut dengan Lelaran Terbina

Apabila diberikan senarai, selalunya terdapat keperluan untuk mengulangi pasangan item berturut-turut. Ini boleh dicapai dengan cara yang ringkas menggunakan iterator terbina dalam Python.

Pertimbangkan senarai berikut:

l = [1, 7, 3, 5]

Untuk mengulangi semua pasangan item berturut-turut, kita boleh menggunakan fungsi zip() Python . Fungsi zip() mengambil berbilang iterable (dalam kes ini, senarai asal dan versi hirisan senarai yang sama) dan mengembalikan objek zip yang berulang ke atas elemen yang sepadan daripada setiap lelaran.

for x, y in zip(l, l[1:]):
    # Do something

The fungsi zip() menyediakan cara yang lebih padat dan cekap untuk mengulangi pasangan item senarai berturut-turut. Dengan menggunakan objek zip sebagai lelaran, kita boleh mengelak daripada membuat senarai baharu, yang boleh memberi manfaat untuk prestasi, terutamanya apabila berurusan dengan senarai besar.

Untuk pengguna Python 2, pilihan alternatif ialah menggunakan izip( ) daripada modul itertools, yang beroperasi dengan cara yang cekap memori untuk senarai besar.

import itertools

for x, y in itertools.izip(l, l[1:]):
    # Do something

Dengan memanfaatkan Python's iterator terbina, kami boleh mengulang dengan mudah dan cekap pada pasangan item senarai berturut-turut, menjadikan tugas pengaturcaraan lebih mudah dan cekap.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengulang Sepasang Item Berturut-turut dalam Senarai Python Menggunakan Iterator Terbina?. 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