Próbuję dostępu elementu A dict_key przez jego indeksie:Dostęp do elementu dict_keys przez indeks w Python3
test = {'foo': 'bar', 'hello': 'world'}
keys = test.keys() # dict_keys object
keys.index(0)
AttributeError: 'dict_keys' object has no attribute 'index'
Chcę dostać foo
.
samo:
keys[0]
TypeError: 'dict_keys' object does not support indexing
Jak mogę to zrobić?
W py3.x 'dict.keys()' zwraca zestaw podobny do widoku obiektu, a nie do listy (tak, indeksowanie nie jest możliwe). Użyj 'keys = list (test)' –
kiedy robię listę (coś_decydowania), kolejność krotek jest losowa: przykład: list ({'foo': 'bar', 'hello': 'world'}) może zwrócić : lista (foo, cześć) lub lista (cześć, foo), dlaczego jest to losowe? – fj123x
[Dicts nie ma żadnego zamówienia] (http://stackoverflow.com/questions/526125/why-is-python-ordering-my-dictionary-like-so). (Użyj 'collections.OrderedDict' jeśli chcesz zamówione klucze) –