Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Menyemak Berbilang Item dalam Senarai dengan Cekap: Pemahaman Senarai lwn Persimpangan Set?

Bagaimana untuk Menyemak Berbilang Item dalam Senarai dengan Cekap: Pemahaman Senarai lwn Persimpangan Set?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-11-12 05:52:01538semak imbas

How to Efficiently Check for Multiple Items in a List: List Comprehension vs. Set Intersection?

Menemui Penyelesaian Pantas untuk Menyemak Berbilang Item dalam Senarai

Menentukan sama ada item tertentu wujud dalam senarai ialah operasi asas dalam pengaturcaraan. Selain membina fungsi tersuai, adakah terdapat pendekatan yang lebih ringkas untuk mengesahkan perkara ini?

Percubaan menggunakan operator Boolean (cth., mencetak (1 atau 2) dalam a) boleh membawa kepada hasil yang tidak dijangka. Untuk menangani perkara ini, kami memperkenalkan dua kaedah yang cekap: pemahaman senarai dan set persilangan.

Pemahaman Senarai

Pemahaman senarai menyediakan cara ringkas untuk menapis senarai berdasarkan predikat . Coretan Python berikut menunjukkan penggunaannya:

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

Operasi ini mengembalikan senarai baharu yang mengandungi hanya elemen L1 yang turut terdapat dalam L2. Dalam kes ini, senarai yang terhasil ialah [2], menunjukkan bahawa 2 ialah satu-satunya elemen biasa.

Tetapkan Persimpangan

Satu lagi pendekatan berkesan memanfaatkan set. Dengan menukar senarai input kepada set menggunakan fungsi set(), kita boleh mencari persilangan mereka menggunakan kaedah intersect():

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

Persilangan set mengembalikan set baharu yang mengandungi elemen yang terdapat dalam kedua-dua set. Dalam contoh ini, hasilnya ditetapkan([2]), mengesahkan kewujudan 2 sebagai elemen biasa.

Memanfaatkan Nilai Boolean

Kedua-dua senarai kosong dan kosong set menilai kepada Salah. Harta ini membolehkan kami menggunakan nilai kebenarannya secara langsung dalam pernyataan bersyarat:

if [i for i in L1 if i in L2]:
    print("2 exists in L2")
else:
    print("No common element found")

Kesimpulan

Dengan menggunakan pemahaman senarai atau set persilangan, kami boleh menentukan dengan cekap sama ada ada daripada berbilang item muncul dalam senarai tertentu, menawarkan penyelesaian yang ringkas dan mudah untuk tugas pengekodan biasa ini.

Atas ialah kandungan terperinci Bagaimana untuk Menyemak Berbilang Item dalam Senarai dengan Cekap: Pemahaman Senarai lwn Persimpangan Set?. 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