Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimanakah Saya Boleh Mengulangi Senarai dalam Ketulan Menggunakan Python dengan Cekap?

Bagaimanakah Saya Boleh Mengulangi Senarai dalam Ketulan Menggunakan Python dengan Cekap?

Patricia Arquette
Lepaskan: 2024-12-20 00:18:08
asal
917 orang telah melayarinya

How Can I Efficiently Iterate Over a List in Chunks Using Python?

Menyalakan Senarai dalam Ketulan: Perspektif Pythonic

Dalam Python, tugas untuk mengulang senarai dalam ketulan boleh dicapai dalam pelbagai cara. Satu pendekatan biasa melibatkan penggunaan gelung untuk mengakses elemen secara berperingkat pada selang waktu tertentu:

for i in range(0, len(ints), 4):
    # dummy op for example code
    foo += ints[i] * ints[i + 1] + ints[i + 2] * ints[i + 3]
Salin selepas log masuk

Kaedah ini, walaupun berfungsi, boleh memperkenalkan kerumitan yang tidak perlu dan "C-think" ke dalam kod Python anda. Pendekatan yang lebih Pythonic melibatkan memanfaatkan fungsi julat() terbina dalam dan menghiris:

def chunker(seq, size):
    return (seq[pos:pos + size] for pos in range(0, len(seq), size))
Salin selepas log masuk

Fungsi chunker mencipta ungkapan penjana yang melelaran melalui jujukan, menghasilkan ketulan saiz yang dikehendaki bermula dari pelbagai kedudukan. Ia sangat cekap dan menghapuskan keperluan untuk gelung eksplisit dan manipulasi indeks.

Sebagai contoh, pertimbangkan kod berikut:

text = "I am a very, very helpful text"

for group in chunker(text, 7):
   print(repr(group),)

# 'I am a ' 'very, v' 'ery hel' 'pful te' 'xt'
Salin selepas log masuk

Di sini, fungsi chunker membahagikan teks kepada kumpulan tujuh aksara, menghasilkan tuple urutan aksara.

Begitu juga, anda boleh menggunakan fungsi chunker untuk memproses jujukan apa-apa jenis, seperti senarai haiwan:

animals = ['cat', 'dog', 'rabbit', 'duck', 'bird', 'cow', 'gnu', 'fish']

for group in chunker(animals, 3):
    print(group)

# ['cat', 'dog', 'rabbit']
# ['duck', 'bird', 'cow']
# ['gnu', 'fish']
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengulangi Senarai dalam Ketulan Menggunakan Python dengan Cekap?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan