Heim > Artikel > Backend-Entwicklung > Warum verändert das Ändern einer Kopie einer Python-Variablen das Original?
Python: Das Ändern der Kopie wirkt sich auf die Originalvariable aus
F: Warum ändert sich beim Erstellen und Ändern einer Kopie einer Variablen auch die Originalvariable? ?
A: In Python sind Variablen Verweise auf Objekte, nicht die Objekte selbst. Durch die Zuweisung einer Variablen zu einer anderen wird eine neue Referenz erstellt, die auf dasselbe Objekt verweist. Wenn Sie also die Kopie ändern, ändern Sie tatsächlich das Originalobjekt.
Bedenken Sie zum Beispiel den Code:
org_list = ['y', 'c', 'gdp', 'cap'] copy_list = org_list copy_list.append('hum')
Damit wird „hum“ an copy_list angehängt und seitdem verweist auf dieselbe Liste wie org_list, org_list ändert sich ebenfalls.
Um eine unabhängige Kopie zu erstellen, verwenden Sie Slicing:
copy_list = org_list[:]
Hier erstellt der Slice-Operator ([:]) eine neue Kopie von die Liste. Jetzt können Sie copy_list ändern, ohne dass sich dies auf org_list auswirkt. Diese Methode kann auf andere Variablentypen angewendet werden, z. B. Pandas-Datenrahmen.
Das obige ist der detaillierte Inhalt vonWarum verändert das Ändern einer Kopie einer Python-Variablen das Original?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!