Python3-Wörterbuch copy()-Methode

Python3 字典Python3-Wörterbuch


Beschreibung

Die copy()-Funktion des Python-Wörterbuchs gibt eine flache Kopie des Wörterbuchs zurück.

Syntax

Syntax der copy()-Methode:

dict.copy()

Parameters

  • Nicht zutreffend.

Rückgabewert

Gibt eine flache Kopie des Wörterbuchs zurück.

Beispiel

Das folgende Beispiel zeigt, wie die Funktion copy() verwendet wird:

Beispiel

#!/usr/bin/python3 dict1 = {'Name': 'Example', 'Age': 7, 'Class': 'First'} dict2 = dict1.copy() print ("Das neu kopierte Dictionary ist:",dict2)

Das Ausgabeergebnis des obigen Beispiels ist:

新复制的字典为 :  {'Age': 7, 'Name': 'Example', 'Class': 'First'}

Unterschied zwischen direkter Zuweisung und copy

Dies kann anhand des folgenden Beispiels erklärt werden:

Beispiel

#!/usr/bin/python # -*- coding: UTF-8 -*- dict1 = {'user':'example','num':[1,2,3]} dict2 = dict1 # Flache Kopie: verweist auf Objekt dict3 = dict1.copy() # Flache Kopie: Das Elternobjekt (erste Ebene) wird tief kopiert, das Kindobjekt (zweite Ebene) wird nicht kopiert, und das Kindobjekt ist eine Referenz # Daten ändern dict1['user']='root' dict1['num'].remove(1) # Ergebnis ausgeben print(dict1) print(dict2) print(dict3)

Im Beispiel ist dict2 tatsächlich eine Referenz (Alias) auf dict1, daher stimmen die Ausgabeergebnisse überein; dict3 hat eine tiefe Kopie des Elternobjekts, daher wird es nicht zusammen mit dict1 geändert, während das Kindobjekt eine flache Kopie ist, daher wird es zusammen mit dict1 geändert.

{'user': 'root', 'num': [2, 3]}
{'user': 'root', 'num': [2, 3]}
{'user': 'example', 'num': [2, 3]}

Wissenserweiterung

Analyse der direkten Zuweisung, flachen Kopie und tiefen Kopie in Python


Python3 字典Python3-Wörterbuch

Andere Erweiterungen