t1.2 révisions : les dictionnaires

Découverte

Nous souhaitons lire avec un code écrit en python des données dans un fichier csv. Nous allons avoir besoin d'un nouveau type de variable : les dictionnaires.

Vous connaissez déjà les listes. Par exemple lst=[1,2,4,1,0] est une liste de nombres, et on sait accéder aux valeur de chaque élément :

Exemple

Finalement, chaque élément de la liste est associé à un indice.

  • 1 est à l'indice 0
  • 2 à l'ndice 1
  • etc...

Dans un dictionnaire, les indices sont remplacés par des descripteurs aussi appelés les clés du dictionnaire. Voila comment pourrait être écrite la liste précédente sous forme d'un dictionnaire :

Exemple

Bon, ça ne sert pas à grand chose vu comme ça ! car ici on a utilisé des clés qui sont strictement identiques aux indices de la liste. Mais ça devient beaucoup plus intéressant si ces clés sont des mots décrivant le contenu :

Exemple
Un dictionnaire permet de décrire les valeurs

Exercice

Exercice de code : afficher les valeurs des clés
Dans cet exercice, vous disposez d'un dictionnaire déjà créé. Faire afficher successivement le nom, le prenom et l'année de naissance.

Modifier un dictionnaire

Exemple
Un dictionnaire permet de décrire les valeurs

Nous venons de voir comment modifier la valeur d'une clé existante. Mais comme pour les listes, on peut bien sur aussi ajouter des éléments :

Exemple
Un dictionnaire permet de décrire les valeurs

Dans le cas d'une liste, les indices sont toujours les mêmes : 0, 1, 2 ...

Dans un dictionnaire en revanche, les descripteurs sont spécifiques, et on peut avoir besoin de les connaitre. On utilise pour cela la méthode keys() :

parcourir un dictionnaire

Rappel parcours de listes

Exemple
rappel : parcours de liste (avec les indices)

Parcours d'un dictionnaire avec keys

On peut parcourir de la même manière un dictionnaire, mais comme les indices sont remplacé par des clés, il faut itérer sur les clés. Pour cela on utilise la méthodé keys() qui nous donne la liste des clés.

Exemple
Un dictionnaire permet de décrire les valeurs

On peux également utiliser les méthodes values et items

Exemple : La méthode Values
Exemple : La méthode items
items renvoi un objet dict_items qui ressemble beaucoup à une liste de tuples.

Exercice

Exercice de code : implementez et afficher un dictionnaire
Voici ci dessous un court extrait de la liste des 72 noms de scientifiques, gravés sur la tour Eiffel. Il s'agit d'une petit partie de ceux gravé sur la face Trocadéro.
Représentez l'information de ce tableau dans trois dictionnaire avec les descripteurs suivants :
  • numéro
  • nom
  • prenom
  • naissance
  • deces
  • metier
(vous n'incluerez pas le Titre dans les dictionnaires).
Le code, à partir de la ligne 6, vous est donné : on va regrouper les 3 dictionnaires dans une liste et afficher cette liste, d'abord dans un parcours de liste, puis d'un seul bloc.
FACE TROCADÉRO
No  Nom en abrégé inscrit sur la tour Eiffel Prénom Dates de naissance et de mort Métier(s) Titres de gloire
1 SEGUIN Marc 1786-1875 Mécanicien Constructeur de ponts suspendus - Inventeur de la chaudière tubulaire
2 LALANDE Joseph 1732-1807 Astronome Nombreux travaux d'astronomie et d'hydrologie
3 TRESCA Henri 1814-1885 Ingénieur et mécanicien Auteur du critère de Tresca (résistance des matériaux)