Itérer (boucle) sur l'ensemble des clés et/ou valeurs d'un dictionnaire sous python

Published: 14 novembre 2017

DMCA.com Protection Status

Considérons un simple dictionnaire (pour rappel un dictionnaire est constitué d'un ensemble de paires clé:valeur ) que l'on peut définir comme ceci:

>>> d = {'a':1,'b':2,'c':3}
>>> type(d)
<class 'dict'>

Pour itérer sur les clés du dictionnaire d, on peut alors procéder comme dans cet exemple:

>>> for key in d:
...     print(key)
... 
a
b
c

Dans ce dictionnaire il y a donc 3 clés: a, b et c. Si on veut maintenant itérer sur les clés et les valeurs associées du dictionnaire, il faut utiliser la méthode items() sous python 3 (ou iteritems() pour python 2), illustration:

>>> for key, value in d.items():
...     print(key,value)
... 
a 1
b 2
c 3
>>>

Pour des dictionnaires plus complexes avec des valeurs qui sont itérables comme un dictionnaire ou une liste par exemple il est aussi possible de créer une boucle qui affiche les données imbriquées, exemple:

>>> d = {'a':1,'b':2,'c':{'hello':1,'Bonjour':2}}
>>> for key, value in d.items():
...     if isinstance(value, dict):
...             for sub_key, sub_value in value.items():
...                     print(key,sub_key,sub_value)
...     else:
...             print(key,value)
... 
a 1
b 2
c hello 1
c Bonjour 2

Références

Creative Commons License

To the extent possible under law, the person who associated CC0 with this work has waived all copyright and related or neighboringrights to this work.