Sto cercando di accedere elemento di un dict_key dal suo indice:Accesso elemento dict_keys dall'indice in python3
test = {'foo': 'bar', 'hello': 'world'}
keys = test.keys() # dict_keys object
keys.index(0)
AttributeError: 'dict_keys' object has no attribute 'index'
voglio arrivare foo
.
stesso con:
keys[0]
TypeError: 'dict_keys' object does not support indexing
Come posso fare questo?
In py3.x 'dict.keys()' restituisce un set come oggetto vista, non lista (quindi, l'indicizzazione non è possibile). Utilizzare 'keys = list (test)' –
quando faccio una lista (something_dict), l'ordine della tupla è casuale: esempio: list ({'foo': 'bar', 'hello': 'world'}) può restituire : lista (foo, ciao) o lista (ciao, foo), perché è casuale? – fj123x
[I dizionari non hanno alcun ordine] (http://stackoverflow.com/questions/526125/why-is-python-ordering-my-dictionary-like-so). (Usa 'collections.OrderedDict' se vuoi chiavi ordinate) –