Seite 1 von 1

Python 3.6+: Auf Elemente in `dict()` über ihren Index zugreifen möglich?

Verfasst: Freitag 25. Januar 2019, 17:40
von Atalanttore
Hallo

In Python 3.6 auf meinem Linux-System behalten die Key-Value-Paare eines `dict()` ihre vorgegebene Reihenfolge ein. Kann man auf die Elemente nun auch über ihren Index zugreifen?

Gruß
Atalanttore

Re: Python 3.6+: Auf Elemente in `dict()` über ihren Index zugreifen möglich?

Verfasst: Freitag 25. Januar 2019, 17:53
von ThomasL
https://docs.python.org/3/library/stdty ... ew-objects
"Changed in version 3.7: Dictionary order is guaranteed to be insertion order."
Mehr nicht, daher lautet die Antwort auf deine Frage: Nein.

Re: Python 3.6+: Auf Elemente in `dict()` über ihren Index zugreifen möglich?

Verfasst: Freitag 25. Januar 2019, 18:12
von sls
Atalanttore hat geschrieben: Freitag 25. Januar 2019, 17:40 In Python 3.6 auf meinem Linux-System behalten die Key-Value-Paare eines `dict()` ihre vorgegebene Reihenfolge ein. Kann man auf die Elemente nun auch über ihren Index zugreifen?
Dictionaries kann man nicht direkt über einen Index ansprechen. Dafür sind andere Datentypen gedacht. Du kannst den Rückgabewert von dict.items() in eine Liste konvertieren und dann über den Index abgreifen.

Code: Alles auswählen

>>> example
{'this': 123, 'is': 456, 'shit': 789}
>>> list(example.items())[0]
('this', 123)
>>> list(example.items())[1]
('is', 456)
>>> list(example.items())[2]
('shit', 789)
>>> 

Re: Python 3.6+: Auf Elemente in `dict()` über ihren Index zugreifen möglich?

Verfasst: Samstag 26. Januar 2019, 16:36
von Atalanttore
Alles klar.