Les dictionnaires sont des ensembles de paires clé-valeur.
Les clés permettent d'accéder aux valeurs.
Les clés doivent être toutes différentes et peuvent être de tous les types non modifiables : int, str, tuple...
Les valeurs peuvent être de tous les types.
Les éléments (paires) d'un dictionnaire n'ont pas d'ordre.
Les dictionnaires s'écrivent avec des accolades {}, les paires sont séparées par des virgules et chaque clé est séparée de sa valeur par un double point :.
Exemple : création directe
dico1 = {'bleu': 'blue', 'rouge': 'red', 'vert': 'green'}
La longueur d'un dictionnaire peut être récupérée à l'aide de la fonction len(dico)
.
Exemple : ajouts successifs de paires clé-valeur
dico2 = {}
dico2['one'] = 1
dico2['two'] = 2
dico2['three'] = 3
Exemple :
dico1 = {'bleu': 'blue', 'rouge': 'red', 'vert': 'green'}
del dico1['rouge'] # Supprime la paire 'rouge':'red'
Il est possible d'accéder à chacune des valeurs à partir des clés correspondantes.
dico1 = {'bleu': 'blue', 'rouge': 'red', 'vert': 'green'}
mot_anglais = dico1['bleu'] # mot_anglais contient la valeur 'blue'
La méthode keys()
renvoie une séquence contenant les clés.
Cette séquence peut être :
- transformée en liste avec list()
- transformée en tuple avec tuple()
Exemple :
dico1 = {'bleu': 'blue', 'rouge': 'red', 'vert': 'green'}
liste_cles = list(dico1.keys()) # liste_cles contient ['bleu', 'rouge', 'vert']
La méthode values()
renvoie une séquence contenant les valeurs.
Cette séquence peut être :
- utilisée dans une boucle for
- transformée en liste avec list()
- transformée en tuple avec tuple()
dico1 = {'bleu': 'blue', 'rouge': 'red', 'vert': 'green'}
liste_valeurs = list(dico1.values()) # liste_valeurs contient ['blue', 'red', 'green']
La méthode items()
renvoie une séquence contenant les paires clé-valeur sous forme de tuples.
Cette séquence peut être :
- utilisée dans une boucle for
- transformée en liste de tuples avec list()
- transformée en tuple de tuples avec tuple()
dico = {'bleu': 'blue', 'rouge': 'red', 'vert': 'green'}
liste_paires = list(dico.items()) # liste_paire contient [('bleu', 'blue'), ('rouge', 'red'), ('vert', 'green)]
La condition d'appartenance in
ou de non appartenance not in
ne s'applique qu'aux clés.
dico = {'bleu': 'blue', 'rouge': 'red', 'vert': 'green'}
test_cle = 'bleu' in dico # test_cle contient True
test_valeur = 'blue' in dico # test_valeur contient False
Exemple : affichage des clés d'un dictionnaire
dico1 = {'bleu': 'blue', 'rouge': 'red', 'vert': 'green'}
for c in dico1:
print(c)
Pour parcourir un dictionnaire et utiliser les clés et les valeurs il faut utiliser la méthode items()
vue ci-dessus.
Exemple : affichage des paires clé-valeur d'un dictionnaire
dico1 = {'bleu': 'blue', 'rouge': 'red', 'vert': 'green'}
for c, v in dico1.items():
print(c + ' se traduit, en anglais, par ' + v)