Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk Menduakan Kamus dengan Benar dalam Python dan Mengelakkan Mengubah Suai yang Asal?

Bagaimana untuk Menduakan Kamus dengan Benar dalam Python dan Mengelakkan Mengubah Suai yang Asal?

DDD
DDDasal
2024-12-22 17:32:10455semak imbas

How to Properly Duplicate Dictionaries in Python and Avoid Modifying the Original?

Kamus Pendua: Mengekalkan Keaslian

Apabila menugaskan satu kamus kepada kamus lain dalam Python, adalah penting untuk diingat bahawa rujukan dicipta, bukan salinan. Ini bermakna sebarang perubahan yang dibuat pada kamus yang diberikan (salinan) juga akan mempengaruhi kamus asal. Untuk mengelakkan tingkah laku ini, salinan sebenar kamus mesti dibuat.

Pertimbangkan contoh berikut:

dict1 = {"key1": "value1", "key2": "value2"}
dict2 = dict1
dict2["key2"] = "WHY?!"
print(dict1)  # {'key2': 'WHY?!', 'key1': 'value1'}

Selepas memberikan dict2 kepada dict1, perubahan yang dibuat kepada dict2 ditunjukkan dalam dict1 sebagai baiklah. Untuk mengelakkan ini, salinan eksplisit mesti dibuat:

dict2 = dict(dict1)
dict2["key2"] = "WHY?!"
print(dict1)  # {'key2': 'value2', 'key1': 'value1'}

Sebagai alternatif, kaedah copy() boleh digunakan:

dict2 = dict1.copy()
dict2["key2"] = "WHY?!"
print(dict1)  # {'key2': 'value2', 'key1': 'value1'}

Dengan menggunakan salah satu kaedah ini, perubahan dibuat pada kamus yang disalin (dict2) tidak akan menjejaskan kamus asal (dict1).

Atas ialah kandungan terperinci Bagaimana untuk Menduakan Kamus dengan Benar dalam Python dan Mengelakkan Mengubah Suai yang Asal?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn