CSV et Python :)

Thème no4 - Les données
| Lundi 23 Mars 2026

Commençons par récupérez puis ouvrir avec Notepad le fichier suivant :

https://www.angelique-renaud.com/snt/donnees/repertoire.csv

Vous enregistrerez le fichier dans votre espace personnel de travail ou sur une clef USB.
Vous devrez vous souvenir du chemin d'accès à votre fichier (ou le lire dans le menu Propriétés).

Question 1 - Lorsqu'un nouveau numéro de téléphone (comme celui de BUGS Bunny) sera entré dans le répertoire, quel problème cela pourra-t-il créer ?

Les données tabulaires sont implicitement ordonnées (par leur numéro de ligne).

Ouvrir une interface Python et exécutez le code suivant:

import pandas 
MonCSV = pandas.read_csv("C:/Users/yschwan/Downloads/repertoire.csv") 
print(MonCSV)

 

Pour chaque morceau de code Python, réaliser une capture d'écran du résultat obtenu.

Le travail est à rendre sur traitement de texte.

 

Python a même rajouté une colonne correspondant au numéro de ligne de données (la ligne des noms des variables n'est pas indicée). Si j'ai besoin du numéro de Bob LEPONGE, il faut que je sache qu'il est en ligne 1 mais je peux demander:

a = MonCSV.loc[1, 'telephone'] 
print(a)

Par contre, si je ne sais pas à quelle ligne est Bob, c'est un peu plus compliqué.

b = MonCSV.loc[(MonCSV['Prenom']=='Bob') & (MonCSV['Nom']=='Leponge'), 'telephone'] 
print(b)

Question 2 - Que signifie & ?

Question 3 - Comment modifier le code pour obtenir le numéro de Mickey Mouse ?

Au fur et à mesure, les nouveaux numéros sont soit insérés (ce qui oblige à déplacer les données déjà enregistrées) soit mises à la fin du fichier (donc "mal rangées").
Il existe des formats de données différents ne se fixant pas sur l'ordre des données.

Dictionnaires en Python

Le type dictionnaire en Python est un type de conteneur qui permet d'associer des valeurs à des clés.

ficheBL = { "Nom": "Leponge", "Prenom": "Bob", "telephone": 7894561} 
print(ficheBL ["Nom"])

Dans le dictionnaire ficheBL, la clé "Nom" est associée à la valeur "Leponge".
On accède à la valeur d'une clé en mettant le nom de la clé entre crochets.

Question 4 - Citer les autres couples clé/valeur

On a voulu définir une autre variable dictionnaire : ficheMM.

ficheMM = {"Prenom": "Mickey", "Nom": "Mouse", "telephone" : 6549871}

vous remarquerez que les couples clé/valeur ne sont pas nécessairement saisis dans le même ordre.
Le répertoire final contiendra toutes ces fiches : ce sera un dictionnaire de dictionnaires

repertoire={"BL": ficheBL, "MM": ficheMM} 
print(repertoire["BL"]) 
{'Nom': 'Leponge', 'Prenom': 'Bob', 'telephone': 7894561}
print(repertoire["BL"]["telephone"])

En mettant le nom d'une fiche entre crochets, j'obtiens toute la fiche.
Si je ne veux que la valeur de la clé téléphone, je dois mettre un deuxième jeu de crochets. Pour rajouter une fiche, comme celle de Donald Duck …

repertoire["DD"] = {"Prenom": "Donald", "Nom": "Duck","telephone" : 6123456} 
print(repertoire)

On peut parcourir les clés et/ou les valeurs d'un dictionnaire avec des boucles…

for cle in repertoire.keys(): print(cle) 
>>> for valeur in repertoire.values(): print(valeur)
for cle, valeur in repertoire.items(): print(cle," vaut ", valeur)