Mencari Perbezaan Unik Antara Senarai
Apabila berurusan dengan berbilang senarai, selalunya perlu membandingkannya dan mengenal pasti perbezaan dalam elemennya. Dalam Python, satu cara yang cekap untuk melakukan ini ialah mencari perbezaan yang ditetapkan antara dua senarai.
Contoh:
Pertimbangkan dua senarai berikut dengan elemen unik:
temp1 = ['One', 'Two', 'Three', 'Four'] temp2 = ['One', 'Two']
Objektif:
Buat senarai ketiga (temp3) yang mengandungi unsur-unsur daripada temp1 yang tidak terdapat dalam temp2. Dalam kes ini, output yang dijangkakan ialah:
temp3 = ['Three', 'Four']
Penyelesaian:
Untuk mengelak daripada menggunakan gelung atau perbandingan eksplisit, jenis data yang ditetapkan boleh dimanfaatkan untuk mencari dengan cekap perbezaan antara keduanya senarai:
temp3 = list(set(temp1) - set(temp2))
Penjelasan:
Asimetri dalam Perbezaan Set:
Perhatikan bahawa perbezaan set bukan komutatif. Ini bermakna set(temp1) - set(temp2) tidak semestinya sama dengan set(temp2) - set(temp1). Contohnya:
set([1, 2]) - set([2, 3]) == {1} set([2, 3]) - set([1, 2]) == {3}
Jika hasil yang diingini ialah memasukkan elemen yang unik kepada kedua-dua set, kaedah symmetric_difference() boleh digunakan:
set([1, 2]).symmetric_difference(set([2, 3])) == {1, 3}
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mencari Perbezaan Unik Antara Dua Senarai dengan Cekap dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!