Das Kopieren von Wörterbüchern in Python verstehen
In Python kann die Manipulation von Wörterbüchern verwirrend sein, wenn es um das Kopieren ihrer Werte geht. Dieser Artikel befasst sich mit einem häufigen Problem, das auftritt, wenn beim Ändern einer Kopie eines Wörterbuchs festgestellt wird, dass sich auch das ursprüngliche Wörterbuch geändert hat.
Um dieses Verhalten zu verstehen, ist es wichtig zu verstehen, dass Python kein implizites Kopieren von Objekten durchführt. Wenn Sie dict2 = dict1 zuweisen, erstellen Sie kein neues Wörterbuchobjekt; Sie erstellen lediglich einen weiteren Verweis auf dasselbe vorhandene Wörterbuch. Alle an Diktat2 vorgenommenen Änderungen wirken sich daher direkt auf Diktat1 aus, da beide auf dieselbe zugrunde liegende Datenstruktur verweisen.
Um dieses Verhalten zu vermeiden und ein Wörterbuch wirklich zu kopieren, müssen Sie explizit ein neues Wörterbuchobjekt erstellen. Zwei Methoden können dies erreichen:
Beispiel:
dict2 = dict(dict1)
Beispiel:
dict2 = dict1.copy()
Mit diesen Techniken können Sie sicherstellen, dass an Diktat2 vorgenommene Änderungen keine Auswirkungen auf das ursprüngliche Diktat1 haben um den Zustand des ursprünglichen Wörterbuchs beizubehalten, während die kopierte Version bearbeitet wird.
Das obige ist der detaillierte Inhalt vonWarum ändert das Ändern einer Python-Wörterbuchkopie auch das Original?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!