Python: Dictionnaire: Difference between revisions

From Wiki Cours
Jump to navigation Jump to search
No edit summary
Line 58: Line 58:
for cle in dico:
for cle in dico:
     print cle, dico[cle]
     print cle, dico[cle]
 
</source>
# la fonction item permet de parcourir directement les couples cle:valeurs
la fonction '''items()''' permet de parcourir directement les couples cle:valeurs
<source lang="py">
for cle,val in dico.items():
for cle,val in dico.items():
     print cle, val
     print cle, val

Revision as of 15:44, 25 August 2015

<--Sommaire

Initialisation

Un dictionnaire est un ensemble d'associations d'éléments clé:valeur où la clé sert d'index ou de mot-clé à laquelle est attribuée une valeur. Il correspond au mot-clé dict. Clé et valeur ne sont pas forcément numériques.

a = dict()
a = {}  # dictionnaire vide
telephones = { 'Julien':'0623459503', 'Julie':'0629534503', 'Juliette':'0603234595' }
print a # affiche la liste

Les dictionnaires assurent une recherche très rapide des éléments.

Il est possible d'utiliser pour les clés tout type 'non-modifiable': int, str, flot, complex, tuple

Adressage des éléments

Les dictionnaires ne sont pas des séquences où les éléments sont organisés de façon ordonnée et auxquels on peut attribuer un indice. En revanche, on accède aux valeurs à l'aide de l'opérateur d'indiçage [] avec comme argument la clé, selon la structure dico[clé] = valeur pour une affectation. Lorsqu'on affecte une valeur à une clé qui n'existe pas encore, un nouveau couple clé:valeur est créé, pas forcément à la fin du dictionnaire:

telephones = { 'Julien':'0623459503', 'Julie':'0629534503', 'Juliette':'0603234595' }
telephones['Julianne'] = '0623450395'
print telephones

Fonctions propres aux dictionnaires

On accède aux listes des clés et des valeurs à l'aide des fonctions keys() et values() qui renvoient des listes:

telephones = { 'Julien':'0623459503', 'Julie':'0629534503', 'Juliette':'0603234595' }
prenoms = telephones.keys()
numeros = telephones.values()
print prenoms
print numeros

La méthode items() retourne les éléments du dictionnaires sous forme d'une liste de tuple.

print telephones.items()

La méthode has_key(cle) permet de tester l'existence d'une clé dans le dictionnaire.

print telephones.has_key('Juliette'), telephones.has_key('Marie')

Le mot-clé del permet de supprimer un élément, le couple clé:valeur est alors supprimé.

del telephones['Julien']

Parcourir un dictionnaire

Il existe plusieurs façon de parcourir un dictionnaire suivant l'information que l'on veut en extraire.

On ne peut pas utiliser d'indiçage entier par construction.

for cle in dico:
    print cle, dico[cle]
la fonction items() permet de parcourir directement les couples cle:valeurs
for cle,val in dico.items():
    print cle, val

Utilisation pour des choix multiples