Hallo,
folgende Situation:
Ich benötige ein Dictionary, um Key / Value Werte speichern zu können. Zusätzlich muss ich am Ende (append()) einen neuen Wert einfügen können und am Beginn Werte entfernen können Queue).
Zusätzlich möchte ich prüfen, ob ein bestimmer Key in meiner Liste exisitert (und den Wert erhalten)
Somit ein Mix auf einem Diectonary und Deque.
Gibt es in Python dazu eine passende Klasse??
Es werden maximal 1000 Einträge in der Liste gespeichert.
lG
python deque mit key/value
- noisefloor
- User
- Beiträge: 3856
- Registriert: Mittwoch 17. Oktober 2007, 21:40
- Wohnort: WW
- Kontaktdaten:
Hallo,
im `collections `Modul gibt es das `OrderedDict`, das sollte hier passen.
Gruß, noisefloor
im `collections `Modul gibt es das `OrderedDict`, das sollte hier passen.
Gruß, noisefloor
-
- User
- Beiträge: 3
- Registriert: Freitag 2. März 2018, 08:31
Danke!
Was ist der beste Weg, um den ersten Eintrag zu löschen?
Gibt es einfachere Wege?
Was ist der beste Weg, um den ersten Eintrag zu löschen?
Gibt es einfachere Wege?
Code: Alles auswählen
s = OrderedDict()
# ...
# ...
del s[next(iter(s))]
- noisefloor
- User
- Beiträge: 3856
- Registriert: Mittwoch 17. Oktober 2007, 21:40
- Wohnort: WW
- Kontaktdaten:
Hallo,
OrderedDict hat eine `popitem()` Methode:
[codebox=pycon file=Unbenannt.txt]>>> from collections import OrderedDict
>>> d = OrderedDict()
>>> d['a'] = 1
>>> d['b'] = 2
>>> d['c'] = 3
>>> d['d'] = 4
>>> d
OrderedDict([('a', 1), ('b', 2), ('c', 3), ('d', 4)])
>>> d.popitem()
('d', 4)
>>> d
OrderedDict([('a', 1), ('b', 2), ('c', 3)])
>>> d.popitem(last=False)
('a', 1)
>>> d
OrderedDict([('b', 2), ('c', 3)])
>>>[/code]
Das ist aber auch in der Doku erklärt.
Gruß, noisefloor
OrderedDict hat eine `popitem()` Methode:
[codebox=pycon file=Unbenannt.txt]>>> from collections import OrderedDict
>>> d = OrderedDict()
>>> d['a'] = 1
>>> d['b'] = 2
>>> d['c'] = 3
>>> d['d'] = 4
>>> d
OrderedDict([('a', 1), ('b', 2), ('c', 3), ('d', 4)])
>>> d.popitem()
('d', 4)
>>> d
OrderedDict([('a', 1), ('b', 2), ('c', 3)])
>>> d.popitem(last=False)
('a', 1)
>>> d
OrderedDict([('b', 2), ('c', 3)])
>>>[/code]
Das ist aber auch in der Doku erklärt.
Gruß, noisefloor
-
- User
- Beiträge: 3
- Registriert: Freitag 2. März 2018, 08:31
Seh ich auch gerade ... Aber danke, hast mir geholfen!noisefloor hat geschrieben:Das ist aber auch in der Doku erklärt.