PaliSkill
Python intermédiaire

Leçon 1 / 10 — Chapitre 9: Mise en pratique : carnet de contacts

Charger des contacts depuis un fichier CSV

Ce chapitre construit un mini-carnet de contacts, en réutilisant les notions des chapitres précédents. Première étape : charger la liste de contacts depuis un fichier CSV avec csv.DictReader (vu au quatrième chapitre).

import csv

def charger_contacts(chemin="contacts.csv"):
    with open(chemin) as fichier:
        lecteur = csv.DictReader(fichier)
        return list(lecteur)

contacts = charger_contacts()
print(contacts)

Si contacts.csv contient nom,telephone puis Amina,0102030405, ce code affiche [{'nom': 'Amina', 'telephone': '0102030405'}] : list(lecteur) transforme l'itérateur csv.DictReader en une véritable liste de dictionnaires, une par ligne du fichier, avec les noms de colonnes comme clés.

Comme pour l'inventaire du chapitre précédent, on prévoit le cas où le fichier n'existe pas encore, avec os.path.exists() (vu au septième chapitre) :

import os.path

def charger_contacts(chemin="contacts.csv"):
    if not os.path.exists(chemin):
        return []
    with open(chemin) as fichier:
        lecteur = csv.DictReader(fichier)
        return list(lecteur)

À vous de jouer : créez un fichier contacts.csv avec les colonnes nom,telephone et deux ou trois lignes, puis chargez-le avec charger_contacts().

À vous de jouer

À faire

Que fait list(lecteur) après csv.DictReader(fichier) ?

Copiez ce code dans un environnement Python en ligne (Google Colab, Replit, ou tout autre) pour vérifier le résultat avant de répondre.

💡 une courte réponse

À vous de jouer

À faire

Que renvoie charger_contacts() si le fichier n'existe pas encore, grace à la verification avec os.path.exists() ?

Copiez ce code dans un environnement Python en ligne (Google Colab, Replit, ou tout autre) pour vérifier le résultat avant de répondre.

💡 une valeur simple

Quitter le module