Tetapkan Operasi dan Pemeliharaan Tertib
Apabila menukar senarai kepada set, susunan elemen berubah kerana set adalah struktur data tidak tertib yang mengutamakan cepat ujian keahlian. Mereka tidak mengekalkan susunan sisipan asal.
Memelihara Susunan dalam Operasi Set
Untuk melaksanakan operasi set tanpa kehilangan susunan awal, pertimbangkan pilihan berikut:
1. Senaraikan Pemahaman untuk Perbezaan Set
Jika anda mempunyai senarai biasa dan perlu mengalih keluar set elemen sambil mengekalkan susunan, gunakan pemahaman senarai:
a = [1, 2, 20, 6, 210] b = set([6, 20, 1]) [x for x in a if x not in b] # [2, 210]
2 . Kunci Kamus untuk Set Tertib
Untuk struktur data dengan ujian keahlian pantas dan pemeliharaan susunan sisipan, gunakan kekunci kamus Python (bermula daripada Python 3.7):
a = dict.fromkeys([1, 2, 20, 6, 210]) b = dict.fromkeys([6, 20, 1]) dict.fromkeys(x for x in a if x not in b) # {2: None, 210: None}
3. Collections.OrderedDict (Sokongan Legasi)
Untuk versi Python yang lebih lama, bergantung pada koleksi.OrderedDict:
a = collections.OrderedDict.fromkeys([1, 2, 20, 6, 210]) b = collections.OrderedDict.fromkeys([6, 20, 1]) collections.OrderedDict.fromkeys(x for x in a if x not in b) # OrderedDict([(2, None), (210, None)])
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Melaksanakan Operasi Set Sambil Mengekalkan Susunan Elemen Asal?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!