Teknik Tetingkap Gelongsor untuk Mengulang Pasangan Bertindih
Apabila bekerja dengan senarai dalam Python, selalunya perlu mengulangi pasangan elemen yang bertindih . Pendekatan biasa ialah menggunakan zip dan zip[1:] untuk mencipta dua iterator yang maju secara bebas ke atas senarai. Walau bagaimanapun, mungkin terdapat cara yang lebih cekap atau idiomatik untuk mencapai hasil yang sama.
Fungsi Berpasangan Itertools
Python 3.8 memperkenalkan fungsi berpasangan daripada modul itertools. Fungsi ini mengambil iterable dan mengembalikan iterator yang menghasilkan pasangan elemen yang bertindih.
Untuk versi Python di bawah 3.8, fungsi yang serupa boleh dilaksanakan menggunakan tee:
def pairwise(iterable): "s -> (s0, s1), (s1, s2), (s2, s3), ..." a, b = itertools.tee(iterable) next(b, None) return zip(a, b)
Faedah daripada Pairwise
Fungsi berpasangan mempunyai beberapa kelebihan berbanding zip tradisional pendekatan:
Kesimpulan
Walaupun pendekatan zip tradisional berfungsi, fungsi berpasangan menyediakan cara yang lebih cekap dan idiomatik untuk mengulangi pasangan elemen yang bertindih dalam Ular sawa. Ia amat berguna untuk mencipta tetingkap gelongsor data untuk pemprosesan atau analisis.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengulangi Pasangan Bertindih dengan Cekap dalam Senarai Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!