Python Tutorial - Datentyp-Dictionary
- Erstellen eines Python-Dictionaries
-
get()
Methode zum Zugriff auf Elemente des Python-Dictionaries - Python Dictionary Update Elemente
- Python Dictionary Elemente löschen
- Methoden anwendbar auf Python Dictionary
- Andere Dictionary-Operationen
- Iterieren durch ein Dictionary
- Eingebaute Funktionen mit Dictionary
In diesem Abschnitt lernen Sie Dictionary in Python. Sie werden lernen, wie Sie ein Dictionary erstellen und wie Sie Elemente hinzufügen und löschen können.
Dictionary ist ein Python-eigener Datentyp, dessen Daten/Werte Schlüssel-Werte-Paare sind. Ein Dictionary enthält ungeordnete Elemente. Ein Stück Daten oder ein Wert des Dictionaries kann abgerufen werden, wenn Sie den Schlüssel kennen.
Erstellen eines Python-Dictionaries
Ein Dictionary kann mit Hilfe von geschweiften Klammern {}
erstellt werden, wobei jedes Element ein Paar aus Schlüssel und Wert sein muss.
Python-Dictionary-Schlüssel müssen von unveränderlichem Datentyp sein, und Werte können von jedem Typ sein.
Betrachten Sie das folgende Beispiel:
>>> x = {1:'blue', 'key':'pink'}
>>> print(type(x))
<class 'dict'>
>>> print('x[1] = ', x[1]) #using key to retrive value
x[1] = blue
>>> print("x['key'] =", x['key']) #using key to retrive value
x['key'] = pink
Ein Dictionary kann auch mit der dict()
Methode initialisiert werden.
>>> dict({1: 'Blau', 2: 'Rosa'})
{1: 'Blau', 2: 'Rosa'...}
get()
Methode zum Zugriff auf Elemente des Python-Dictionaries
Sie können auf die Werte eines Dictionaries mit Hilfe von Schlüsseln zugreifen. Schlüssel können entweder mit dem Indexzugriffsoperator wie oben beschrieben oder mit der get()
Methode verwendet werden.
Wenn der Schlüssel bei der Verwendung der get()
Methode nicht gefunden wird, wird statt eines Fehlers None
zurückgegeben.
>>> d = dict({1: 'Blue', 2: 'Pink'})
>>> print(d[1])
Blue
>>> print(d.get(1))
Blue
>>> print(d[3])
Traceback (most recent call last):
File "<pyshell#1>", line 1, in <module>
d[3]
KeyError: 3
>>> print(d.get(3))
None
Python Dictionary Update Elemente
Dictionary ist veränderbar, so dass Sie Elemente aktualisieren, hinzufügen und löschen können. Die Elemente eines Dictionaries können mit Hilfe des Zuweisungsoperators aktualisiert werden.
Bei der Aktualisierung von Elementen mit einem nicht im Dictionary vorhandenen Schlüssel wird ein neues Schlüssel-Werte-Paar erzeugt, andernfalls wird der entsprechende Wert aktualisiert.
>>> d = dict({1: 'Blue', 2: 'Pink'})
>>> d[1] = 'Yellow'
>>> print(d)
{1: 'Yellow', 2: 'Pink'}
>>> d[3] = 'Black'
>>> print(d)
{1: 'Yellow', 2: 'Pink', 3: 'Black'}
Python Dictionary Elemente löschen
Im Folgenden sind einige Möglichkeiten zum Löschen von Elementen aus dem Dictionary aufgeführt:
- Die
pop()
Methode: Sie entfernt und gibt den Wert des entsprechenden gegebenen Schlüssels zurück. - Die
popitem()
Methode: Es wird ein Schlüsselwort(key, value)
aus dem Dictionary entfernt und zurückgegeben. clear()
Methode: Es wird ein arbitrary(key, value)
aus dem Dictionary entfernen und zurückgeben. 3: Es werden alle Elemente aus dem Dictionary gelöscht, aber nicht das Dictionary.- Schlüsselwort
del
: Es kann eine bestimmte Methode oder das gesamte Dictionary entfernen.
Betrachten Sie das folgende Beispiel:
>>> d = dict({1: 'Blue', 2: 'Pink', 3:'Yellow', 4:'Red'})
>>> print(d.pop(2))
Pink
>>> print(d)
{1: 'Blue', 3: 'Yellow', 4: 'Red'}
>>> print(d.popitem())
(4, 'Red')
>>> print(d)
{1: 'Blue', 3: 'Yellow'}
>>> del d[3]
>>> print(d)
{1: 'Blue'}
>>> d.clear()
>>> print(d)
{}
>>> del d
>>> print(d)
Traceback (most recent call last):
File "<pyshell#13>", line 1, in <module>
print(d)
NameError: name 'd' is not defined
Methoden anwendbar auf Python Dictionary
Beachten Sie die folgende Tabelle:
Methode | Beschreibung |
---|---|
clear() |
alle Einträge aus dem Dictionary löschen |
copy() |
ein Dictionary kopieren |
fromkeys(seq[,v]) |
gibt ein Dictionary mit seq Elementen als Schlüssel zurück und die Werte sind gleich v |
get(key[,d]) |
liefert den Wert des Schlüssels und wenn es keinen Schlüssel gibt, wird d zurückgegeben. |
items() |
liefert die Einträge des Dictionaries als (key, value) |
keys() |
die Schlüssel eines Dictionaries zurückgeben |
pop(key[,d]) |
ein Element entfernen, das dem “Schlüssel” entspricht. Wenn der Schlüssel nicht existiert, wird der Wert, der dem d entspricht, zurückgegeben. Wenn sowohl d als auch Schlüssel nicht existieren, wird ein Fehler ausgegeben. |
popitem() |
Es kehrt zurück und entfernt sowohl Schlüssel als auch Wert aus dem Dictionary. |
setdefault(key[,d]) |
gibt den Wert des Schlüssels zurück. Wenn der Schlüssel nicht gefunden wird, wird ein neuer Schlüssel mit dem Wert d erstellt und d zurückgegeben. |
update([other]) |
das Dictionary mit Schlüsseln und Werten als Sonstiges aktualisieren. |
values() |
die Werte eines Dictionaries zurückgeben |
Andere Dictionary-Operationen
Dictionary-Mitgliedschaft prüfen
Das Schlüsselwort in
prüft, ob ein Element ein Mitglied des Dictionaries ist oder nicht.
>>> d = dict({1: 'Blue', 2: 'Pink', 3:'Yellow', 4:'Red'})
>>> print(2 in d)
True
>>> print(5 in d)
False
Iterieren durch ein Dictionary
Sie können durch ein Dictionary iterieren, indem Sie eine “Für”-Schleife verwenden:
>>> d = dict({1: 'Blue', 2: 'Pink', 3:'Yellow', 4:'Red'})
>>> for i in d:
print(i)
1
2
3
4
Eingebaute Funktionen mit Dictionary
Im Folgenden sind einige der eingebauten Funktionen aufgeführt, die mit Wörterbüchern verwendet werden können, um verschiedene Aufgaben zu erfüllen:
Funktionen | Beschreibung |
---|---|
all() |
geben True zurück, wenn alle Schlüssel des Dictionaries True sind. Es gibt auch True zurück, wenn das Dictionary leer ist. |
any() |
gibt True zurück, wenn einer der Schlüssel des Dictionaries True ist. Es gibt False zurück, wenn das Dictionary leer ist. |
cmp() |
zwei Wörterbücher vergleichen |
len() |
gibt die Anzahl der Elemente in einem Dictionary oder die Länge des Dictionaries zurück. |
sorted() |
gibt eine sortierte Liste von Schlüsseln eines Dictionaries zurück. |
Betrachten Sie den folgenden Code:
>>> d = dict({1: 'Blue', 2: 'Pink', 3:'Yellow', 4:'Red'})
>>> print(len(d))
4
>>> print(sorted(d))
[1, 2, 3, 4]
Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.
LinkedIn Facebook