Leeren ein Dictionary in Python

Elsie Dela Pena 10 Oktober 2023
  1. Zuweisen von {} zum Leeren eines Dictionaries in Python
  2. Verwenden Sie die Funktion clear(), um alle Elemente in einem Dictionary in Python zu entfernen
Leeren ein Dictionary in Python

Dieses Tutorial zeigt, wie Sie ein Dictionary in Python leeren.

Zuweisen von {} zum Leeren eines Dictionaries in Python

Eine einfache Lösung zum Leeren eines Dictionaries in Python besteht darin, einem Dictionary {} zuzuweisen.

Durch das Zuweisen von {} wird ein neues Objekt instanziiert und das vorhandene Dictionary ersetzt. Dies bedeutet, dass eine neue Referenz im Speicher für ein neues Dictionary zugewiesen wird und der zugewiesene Speicherplatz für das alte Dictionary, das ersetzt wurde, für die Speicherbereinigung markiert ist.

dct = {"name": "John", "age": 23}

dct = {}

print("Dictionary contains:", dct)

Ausgabe:

Dictionary contains : {}

Verwenden Sie die Funktion clear(), um alle Elemente in einem Dictionary in Python zu entfernen

Ein anderer Ansatz ist die Verwendung der in Python integrierten Funktion clear(), mit der alle im Dictionary vorhandenen Inhalte entfernt werden. Die Funktion hat keine Parameter und keinen Rückgabewert. Ihr einziger Zweck besteht nur darin, den Inhalt eines Dictionaries zu löschen.

dict = {"name": "John", "age": 23}

dict.clear()

print("Dictionary contains :", dict)

Ausgabe:

Dictionary contains : {}

Der Unterschied zwischen der Zuweisung der Funktion {} und der Funktion clear() besteht darin, dass letztere keine neue Instanz erstellt, sondern den gesamten Inhalt des vorhandenen Dictionaries sowie die Verweise des Dictionaries entfernt, da der Inhalt gelöscht wird.

Vergleichen wir diese beiden Ansätze im selben Anwendungsfall.

Verwenden Sie die integrierte Funktion clear():

dict1 = {"name": "John", "age": 23}
dict2 = dict1

dict1.clear()

print("After using clear()")
print("Dictionary 1 contains :", dict1)
print("Dictionary 2 contains :", dict2)

Ausgabe:

After using clear()
Dictionary 1 contains : {}
Dictionary 2 contains : {}

Wie Sie sehen können, sind dict1 und dict2 jetzt leer.

Zuweisen des Dictionaries zu {}:

dict1 = {"name": "John", "age": 23}
dict2 = dict1

# Assign {} removes only dict1 contents
dict1 = {}

print("After assigning {}")
print("Dictionary 1 contains :", dict1)
print("Dictionary 2 contains :", dict2)

Ausgabe:

After assigning {}
Dictionary 1 contains : {}
Dictionary 2 contains : {'name': 'John', 'age': 23}

Im obigen Beispiel hat dict1 = {} ein neues leeres Dictionary erstellt, während dict2 immer noch auf den alten Wert von dict1 verweist, wodurch die Werte in dict2-Werten unverändert bleiben. In diesem Fall wird die Speicherbereinigung nicht ausgelöst, da noch eine andere Variable auf das Dictionary verweist.

Zusammenfassend lässt sich sagen, dass durch die Verwendung von {} zum Löschen aller Inhalte in einem Dictionary eine neue Instanz erstellt wird, anstatt die vorhandene Dictionaryreferenz zu aktualisieren. Wenn Sie einen anderen Namen haben, der sich auf dasselbe Dictionary bezieht, verwenden Sie am besten die Funktion clear(), damit auch alle Verweise auf dieselbe Instanz gelöscht werden.

Verwandter Artikel - Python Dictionary