Memastikan Korespondensi Antara Kunci Kamus dan Nilai
Dalam kamus Python, kaedah keys() dan values() menyediakan akses kepada kunci dan nilai dalam kamus, masing-masing. Telah diperhatikan bahawa senarai yang dikembalikan oleh kaedah ini nampaknya mengekalkan pemetaan satu-ke-satu, di mana kekunci ke-i daripada kekunci() sepadan dengan nilai ke-i daripada nilai().
Walau bagaimanapun, adalah penting untuk mengesahkan sama ada pemetaan ini sentiasa dijamin. Khususnya, jika kamus tidak diubah antara kekunci panggilan() dan nilai(), bolehkah kita bergantung pada andaian bahawa ia akan sentiasa menghasilkan senarai yang sepadan?
Dokumentasi Rasmi
Dokumentasi untuk kamus Python tidak menyatakan secara eksplisit sama ada susunan keys() dan values() adalah terpelihara. Walau bagaimanapun, ia memberikan petunjuk:
d = {'satu':1, 'dua': 2, 'tiga': 3}
k, v = d. keys(), d.values()
untuk i in julat(len(k)):
print d[k[i]] == v[i]
Benar
Benar
Benar
Contoh ini menggambarkan bahawa apabila tiada pengubahsuaian dibuat pada kamus antara kekunci panggilan() dan nilai(), gelung untuk secara konsisten mencetak Benar, mencadangkan surat-menyurat antara senarai.
Pemerhatian Selanjutnya
Untuk mengesahkan pemerhatian ini, carian yang lebih meluas telah dijalankan:
Pernyataan ini memberikan jaminan bahawa pemetaan antara kunci() dan values() memang dikekalkan selagi kamus masih ada tidak diubah.
Kesimpulan
Berdasarkan dokumentasi rasmi dan pemerhatian empirikal, kami boleh membuat kesimpulan bahawa apabila anda memanggil keys() dan values() pada kamus Python tanpa membuat sebarang pengubahsuaian pada kamus antara panggilan, anda boleh bergantung pada surat-menyurat satu dengan satu antara senarai kunci dan nilai. Pemetaan yang boleh dipercayai ini memudahkan manipulasi kamus dan memastikan gelagat yang boleh diramal dalam senario pengaturcaraan biasa.
Atas ialah kandungan terperinci Adakah Koresponden Antara `keys()` dan `values()` dalam Kamus Python Dijamin?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!