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
Lepaskan: 2024-12-22 17:32:10
asal
454 orang telah melayarinya

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'}
Salin selepas log masuk

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'}
Salin selepas log masuk

Sebagai alternatif, kaedah copy() boleh digunakan:

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

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!

sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan