Les dictionnaires python

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

Comment créer un dictionnaire python?

Pour initialiser un dictionnaire , on utile la syntaxe suivante:

>>> a = {}

ou

>>> a = dict()

Comment ajouter des valeurs dans un dictionnaire python?

Pour ajouter des valeurs à un dictionnaire il faut indiquer une clé ainsi qu'une valeur:

>>> a = {}
>>> a["nom"] = "Wayne"
>>> a["prenom"] = "Bruce"
>>> a
{'nom': 'Wayne', 'prenom': 'Bruce'}

Vous pouvez utiliser des clés numériques comme dans la logique des listes .

Comment récupérer une valeur dans un dictionnaire python?

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:

>>> data = {"name": "Wayne", "age": 45}
>>> data.get("name")
'Wayne'
>>> data.get("adresse", "Adresse inconnue")
'Adresse inconnue'

Comment vérifier la présence d'une clé dans un dictionnaire python?

Vous pouvez utiliser la méthode haskey pour vérifier la présence d'une clé que vous cherchez:

>>> a.has_key("nom")
True

Comment supprimer une entrée dans un dictionnaire python?

Il est possible de supprimer une entrée en indiquant sa clé, comme pour les listes:

>>> del a["nom"]
>>> a
{'prenom': 'Bruce'}

Comment récupérer les clés d'un dictionnaire python par une boucle?

Pour récupérer les clés on utilise la méthode keys .

>>> fiche = {"nom":"Wayne", "prenom":"Bruce"}
>>> for cle in fiche.keys():
...     print cle
... 
nom
prenom

Comment récupérer les valeurs d'un dictionnaire python par une boucle?

Pour cela on utilise la méthode values .

>>> fiche = {"nom":"Wayne", "prenom":"Bruce"}
>>> for valeur in fiche.values():
...     print valeur
... 
Wayne
Bruce

Comment récupérer les clés et les valeurs d'un dictionnaire python par une boucle?

Pour récupérer les clés et les valeurs en même temps, on utilise la méthode items qui retourne un tuple .

>>> fiche = {"nom":"Wayne","prenom":"Bruce"}
>>> for cle,valeur in fiche.items():
...     print cle, valeur
... 
nom Wayne
prenom Bruce

Comment utiliser des tuples comme clé dans un dictionnaire python?

Une des forces de python est la combinaison tuple/dictionnaire qui fait des merveilles dans certains cas comme lors de l'utilisation de coordonnées.

>>> b = {}
>>> b[(32)]=12
>>> b[(45)]=13
>>> b
{(4, 5): 13, (3, 2): 12}

Comment créer une copie indépendante d'un dictionnaire python?

Comme pour toute variable, vous ne pouvez pas copier un dictionnaire en faisant dic1 = dic2 :

>>> d = {"k1":"Bruce", "k2":"Wayne"}
>>> e = d
>>> d["k1"] = "XXX"
>>> e
{'k2': 'Wayne', 'k1': 'XXX'}

Pour créer une copie indépendante vous pouvez utiliser la méthode copy :

>>> d = {"k1":"Bruce", "k2":"Wayne"}
>>> e = d.copy()
>>> d["k1"] = "XXX"
>>> e
{'k2': 'Wayne', 'k1': 'Bruce'}

Comment fusionner des dictionnaires python?

La méthode update permet de fusionner deux dictionaires .

>>> a = {'nom': 'Wayne'}
>>> b = {'prenom': 'bruce'}
>>> a.update(b)
>>> print(a)
{'nom': 'Wayne', 'prenom': 'Bruce'}        


Livres Python & Django: conseils de lecture



Apprendre programmation cours python 3
Django internet web - Documentation débutant et expert
Version anglaise