CSV et Python
CSV et Python
📄 CSV et Python – L’essentiel
🔹 Qu’est-ce qu’un CSV ?
Un fichier CSV est un fichier texte contenant des données sous forme de tableau.
➡️ Une ligne = un enregistrement
➡️ Valeurs séparées par ; (souvent en France)
Exemple :
prenom;nom;age
Jean;Dupont;18
🔹 Lire un fichier CSV
1
2
3
4
5
6
7
import csv
with open("eleves.csv", newline='', encoding="utf-8") as f:
lecteur = csv.reader(f, delimiter=';')
for ligne in lecteur:
print(ligne)
➡️ Chaque ligne = une liste
🔹 Ignorer l’en-tête
1
next(lecteur)
🔹 Récupérer les valeurs
1
2
for ligne in lecteur:
prenom, nom, age = ligne
🔹 Conversion des types
1
age = int(age)
➡️ Important : tout est lu en texte
🔹 Lire avec des noms de colonnes
1
2
3
4
lecteur = csv.DictReader(f, delimiter=';')
for ligne in lecteur:
print(ligne["prenom"])
➡️ Chaque ligne = dictionnaire
🔹 Écrire dans un CSV
1
2
3
4
5
6
7
import csv
with open("eleves.csv", "w", newline='', encoding="utf-8") as f:
writer = csv.writer(f, delimiter=';')
writer.writerow(["prenom", "nom", "age"])
writer.writerow(["Jean", "Dupont", 18])
🔹 Ajouter une ligne
1
2
3
with open("eleves.csv", "a", newline='', encoding="utf-8") as f:
writer = csv.writer(f, delimiter=';')
writer.writerow(["Paul", "Durand", 16])
🔹 Points importants ⭐
- Toujours :
encoding="utf-8"newline=''delimiter=';'
- Utiliser
next()pour ignorer l’en-tête - Convertir les nombres (
int,float) reader→ listesDictReader→ dictionnaires (plus lisible)
🔹 À retenir
- CSV = simple et universel
- Python → module
csvintégré - Sert souvent à :
- importer dans SQLite
- alimenter une application
- échanger des données
This post is licensed under CC BY 4.0 by the author.