Dictionnaires python

Un dictionnaire en python est une liste mais au lieu d’utiliser des index, on utilise des clés alphanumériques.

Python3


Créer un dictionnaire

python
1
2
3
un_dico = {}
ou
un_dico = dict()

Ajouter des valeurs

python
1
2
3
4
5
un_dico = {}
un_dico["nom"] = "Monty"
un_dico["prenom"] = "Python"
un_dico
{'nom': 'Monty', 'prenom': 'Python'}

Trouver des valeurs

La méthode get vous permet de récupérer une valeur dans un dictionnaire et si la clé est introuvable, vous pouvez donner une valeur à retourner par défaut

python
1
2
3
4
data = {"prenom": "Python", "age": 30}
data.get("prenom")
'Python'
data.get("ip", "Adresse ip inconnue")

Méthode pour vérifier la présence d’une clé

python
1
2
3
un_dico = {"test1" : "sortie1"}
"test1" in un_dico
True

Supprimer une entrée en indiquant sa clé

python
1
2
3
del un_dico["test1"]
un_dico
{}

Récupérer les clés par une boucle

python
1
2
3
4
5
fiche = {"nom":"Monty", "prenom":"Python"}
for clef in fiche.keys():
    print (clef)
nom
prenom

Récupérer les valeurs par une boucle

python
1
2
3
4
5
fiche = {"nom":"Monty", "prenom":"Python"}
for valeur in fiche.values():
    print (valeur)
Monty
Python

Récupérer les clés et les valeurs par une boucle

python
1
2
3
4
5
fiche = {"nom":"Monty", "prenom":"Python"}
for valeur in fiche.items():
    print (valeur)
('nom', 'Monty')
('prenom', 'Python')

Utiliser des tuples comme clé

python
1
2
3
4
5
b = {}
b[(3,2)]=12
b[(4,5)]=13
b
{(3, 2): 12, (4, 5): 13}

Créer une copie indépendante d’un dictionnaire

python
1
2
3
4
5
6
7
8
9
# /!\ pas bon
d = {"k1":"Docker", "k2":"Kube"}
e = d
d["k1"] = "Vagrant"
e
{'k1': 'Vagrant', 'k2': 'Kube'}
d
{'k1': 'Vagrant', 'k2': 'Kube'}
# /!\ pas bon
python
1
2
3
4
5
6
7
d = {"k1":"Docker", "k2":"Kube"}
e = d.copy()
d["k1"] = "Vagrant"
e
{'k1': 'Docker', 'k2': 'Kube'}
d
{'k1': 'Vagrant', 'k2': 'Kube'}

Fusionner des dictionnaires

python
1
2
3
4
5
a = {'nom': 'Monty'}
b = {'prenom': 'Python'}
a.update(b)
print(a)
{'nom': 'Monty', 'prenom': 'Python'}