Heim > Backend-Entwicklung > Python-Tutorial > Wie dupliziert man Wörterbücher in Python ordnungsgemäß und vermeidet Änderungen am Original?

Wie dupliziert man Wörterbücher in Python ordnungsgemäß und vermeidet Änderungen am Original?

DDD
Freigeben: 2024-12-22 17:32:10
Original
521 Leute haben es durchsucht

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

Wörterbücher duplizieren: Originalität bewahren

Beim Zuweisen eines Wörterbuchs zu einem anderen in Python ist es wichtig zu bedenken, dass Referenzen erstellt werden, keine Kopien. Dies bedeutet, dass alle Änderungen, die am zugewiesenen Wörterbuch (der Kopie) vorgenommen werden, auch Auswirkungen auf das Originalwörterbuch haben. Um dieses Verhalten zu verhindern, muss eine echte Kopie des Wörterbuchs erstellt werden.

Betrachten Sie das folgende Beispiel:

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

Nach der Zuweisung von Diktat2 zu Diktat1 werden an Diktat2 vorgenommene Änderungen in Diktat1 als widergespiegelt Also. Um dies zu vermeiden, muss eine explizite Kopie erstellt werden:

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

Alternativ kann die Methode copy() verwendet werden:

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

Durch die Verwendung einer dieser Methoden werden Änderungen an der vorgenommen Das kopierte Wörterbuch (dict2) hat keine Auswirkungen auf das ursprüngliche Wörterbuch (dict1).

Das obige ist der detaillierte Inhalt vonWie dupliziert man Wörterbücher in Python ordnungsgemäß und vermeidet Änderungen am Original?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage