Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk Memeriksa Kehadiran Item Senarai dengan Cekap dalam Python?

Bagaimana untuk Memeriksa Kehadiran Item Senarai dengan Cekap dalam Python?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-11-14 09:55:02403semak imbas

How to Efficiently Check for List Item Presence in Python?

Menyemak Kehadiran Item Senarai Menggunakan Iterator dan Set

Apabila mengesahkan jika mana-mana item daripada sekumpulan elemen terdapat dalam senarai, satu pendekatan semula jadi adalah untuk mengulangi setiap elemen dan meneliti kewujudannya. Walau bagaimanapun, Python menawarkan kaedah yang lebih cekap daripada menulis fungsi eksplisit untuk tugasan ini.

Pendekatan biasa melibatkan operator logik seperti 'atau,' tetapi seperti yang ditunjukkan dalam contoh, ini boleh membawa kepada hasil yang tidak dijangka kerana kebenaran Python mekanisme penilaian.

Kaedah pilihan ialah memanfaatkan kefahaman. Sebagai contoh, kod berikut mencipta senarai baharu dengan mengulangi item dalam L1 dan menapis hanya item yang wujud dalam L2:

L1 = [2,3,4]
L2 = [1,2]
[i for i in L1 if i in L2]

Ini mengembalikan senarai yang mengandungi elemen biasa, yang boleh kosong jika tiada mancis ditemui. Jika senarai yang tidak kosong dikembalikan, sekurang-kurangnya satu item dalam kumpulan itu hadir.

Pendekatan lain menggunakan set. Set ialah koleksi tidak tertib dalam Python, dan ia menyediakan cara yang cekap untuk menyemak kehadiran elemen. Mula-mula, tukar L1 dan L2 kepada set menggunakan fungsi set():

S1 = set(L1)
S2 = set(L2)

Kemudian, cari persilangan mereka menggunakan kaedah intersection():

S1.intersection(S2)

Hasilnya akan menjadi set yang mengandungi unsur sepunya. Set kosong menilai kepada Palsu, jadi anda boleh terus menggunakan hasilnya sebagai nilai kebenaran untuk menentukan sama ada sebarang item daripada kumpulan itu hadir.

Atas ialah kandungan terperinci Bagaimana untuk Memeriksa Kehadiran Item Senarai 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