Memahami Menyalin Kamus dalam Python
Dalam Python, memanipulasi kamus boleh mengelirukan apabila menyalin nilainya. Artikel ini menangani isu biasa yang dihadapi semasa mengubah suai salinan kamus hanya untuk mengetahui bahawa kamus asal juga telah berubah.
Untuk memahami tingkah laku ini, adalah penting untuk memahami bahawa Python tidak melakukan penyalinan objek tersirat. Apabila anda menetapkan dict2 = dict1, anda tidak mencipta objek kamus baharu; anda hanya mencipta rujukan lain kepada kamus sedia ada yang sama. Sebarang perubahan yang dibuat pada dict2 oleh itu akan menjejaskan dict1 secara langsung kerana kedua-duanya merujuk kepada struktur data asas yang sama.
Untuk mengelakkan tingkah laku ini dan benar-benar menyalin kamus, anda mesti mencipta objek kamus baharu secara eksplisit. Dua kaedah boleh mencapai ini:
Contoh:
dict2 = dict(dict1)
Contoh:
dict2 = dict1.copy()
Dengan menggunakan teknik ini, anda boleh memastikan bahawa pengubahsuaian yang dibuat kepada dict2 tidak akan menjejaskan dict1 asal, membolehkan anda untuk mengekalkan keadaan kamus asal sambil memanipulasi versi salinannya.
Atas ialah kandungan terperinci Mengapa Mengubah Salinan Kamus Python Juga Mengubah Yang Asal?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!