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!