Domanda

    

Questa domanda ha già una risposta qui:

         

Come posso ottenere un elenco di tuple chiave-valore da un dict in Python?

È stato utile?

Soluzione

Per Python 2.x solo (grazie Alex):

yourdict = {}
# ...
items = yourdict.items()

http://docs.python.org/library/stdtypes.html # dict.items per i dettagli.

Per Python 3.x (tratto da risposta di Alex ):

yourdict = {}
# ...
items = list(yourdict.items())

Altri suggerimenti

Per un elenco di di tuple:

my_dict.items()

Se tutto quello che stai facendo è iterare sulle voci, tuttavia, è spesso preferibile utilizzare dict.iteritems(), che è più efficiente della memoria perché restituisce un solo elemento alla volta, piuttosto che tutte le voci in una sola volta:

for key,value in my_dict.iteritems():
     #do stuff

In Python 2.*, thedict.items(), come in @ risposta di Andrew. In Python 3.*, list(thedict.items()) (poiché non v'è solo un items vista iterabile, non una lista, è necessario chiamare list su di esso in modo esplicito se avete bisogno di esattamente una lista).

La conversione da dict a list è facile in Python. Tre esempi:

d = {'a': 'Arthur', 'b': 'Belling'}

d.items() [('a', 'Arthur'), ('b', 'Belling')]

d.keys() ['a', 'b']

d.values() ['Arthur', 'Belling']

come si è visto in una precedente risposta, Conversione Python dizionario to List .

Per Python> 2.5:

a = {'1' : 10, '2' : 20 }
list(a.itervalues())
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top