Senarai Bersilang: Menangkap Elemen Bertindih
Dalam teka-teki pengaturcaraan ini, kami mencari penyelesaian untuk menentukan persilangan dua senarai, mengenal pasti yang biasa unsur antara mereka. Memandangkan dua senarai, 'a' dan 'b', tugasnya adalah untuk mencari senarai yang mengandungi hanya elemen yang dikongsi oleh kedua-dua senarai.
Pernyataan Masalah: Boolean DAN Operasi pada Senarai
Pertimbangkan coretan kod berikut:
a = [1,2,3,4,5] b = [1,3,5,6] c = a and b print c
Apabila melaksanakan kod ini, seseorang mungkin jangkakan keluaran '[1,3,5]' sebagai persilangan senarai 'a' dan 'b'. Walau bagaimanapun, output sebenar ialah '[1,3,5,6]', yang merangkumi elemen yang tidak terdapat dalam persimpangan.
Penyelesaian: Menggunakan Set Persimpangan
Untuk mencapai operasi boolean DAN (persimpangan senarai) pada dua senarai, mengelakkan pendua dan mengekalkan susunan, kami boleh memanfaatkan persimpangan set. Set ialah koleksi unsur unik yang tidak tertib. Dengan menukar senarai kepada set, mengambil persilangannya dan menukar set yang terhasil kembali kepada senarai, kita boleh memperoleh hasil yang diingini:
>>> a = [1,2,3,4,5] >>> b = [1,3,5,6] >>> list(set(a) & set(b)) [1, 3, 5]
Penyelesaian ini dengan cekap mengenal pasti dan mengembalikan hanya elemen yang dimiliki oleh kedua-duanya. senarai, memberikan gambaran ringkas persimpangan mereka.
Atas ialah kandungan terperinci Bagaimanakah Kita Boleh Mencari Persimpangan Dua Senarai dengan Cekap dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!