Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimanakah Saya Boleh Meninggalkan Senarai Tidak Sama Panjang dengan Cekap dalam Python?

Bagaimanakah Saya Boleh Meninggalkan Senarai Tidak Sama Panjang dengan Cekap dalam Python?

Linda Hamilton
Linda Hamiltonasal
2024-12-08 11:59:11306semak imbas

How Can I Efficiently Interleave Unequal-Length Lists in Python?

Jalinan Pythonic bagi Senarai Tidak Sama Panjang

Penyelesaian Pythonic untuk menjalin dua senarai panjang yang berbeza adalah lebih cekap dan elegan daripada gelung yang disediakan pendekatan. Dengan mengambil kesempatan daripada menghiris, tugas itu boleh dicapai dalam satu baris kod.

Pertimbangkan contoh berikut, di mana senarai pertama mengandungi satu item lagi daripada yang kedua:

list1 = ['f', 'o', 'o']
list2 = ['hello', 'world']

Output yang dikehendaki ialah:

['f', 'hello', 'o', 'world', 'o']

Menggunakan penghirisan, ini boleh dicapai sebagai berikut:

result = [None]*(len(list1)+len(list2))
result[::2] = list1
result[1::2] = list2

Pendekatan ini mencipta senarai baharu, hasil, yang mempunyai ruang yang cukup untuk memuatkan elemen daripada kedua-dua senarai input. Operator penghirisan [::2] dan [1::2] memperuntukkan setiap elemen lain kepada senarai input yang sepadan.

Hasilnya ialah senarai baharu yang menggantikan elemen daripada kedua-dua senarai input, seperti yang dikehendaki. Kaedah ini lebih ringkas, cekap dan Pythonic daripada pendekatan gelung.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Meninggalkan Senarai Tidak Sama Panjang dengan Cekap dalam Python?. 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