Exemples — Fichiers
Lire et compter les lignes d'un fichier
with open("data.txt", encoding="utf-8") as f:
nb_lignes = sum(1 for _ in f)
Lire un fichier CSV en liste de dicts
import csv
with open("etudiants.csv", newline="", encoding="utf-8") as f:
etudiants = list(csv.DictReader(f))
for e in etudiants:
print(e["nom"], e["age"])
Écrire un rapport texte
resultats = {"Ana": 18, "Bo": 12, "Cy": 15}
with open("rapport.txt", "w", encoding="utf-8") as f:
for nom, note in sorted(resultats.items(), key=lambda x: -x[1]):
f.write(f"{nom} : {note}/20\n")
with open("entree.txt", encoding="utf-8") as fin, \
open("sortie.txt", "w", encoding="utf-8") as fout:
for ligne in fin:
fout.write(ligne.upper())
Lister récursivement les fichiers d'une extension donnée
from pathlib import Path
fichiers_py = sorted(Path(".").rglob("*.py"))
for chemin in fichiers_py:
print(chemin, chemin.stat().st_size, "octets")
Sauvegarder / charger un état en JSON
import json
from pathlib import Path
def sauvegarder(etat, chemin="etat.json"):
Path(chemin).write_text(json.dumps(etat, indent=2), encoding="utf-8")
def charger(chemin="etat.json"):
if not Path(chemin).exists():
return {}
return json.loads(Path(chemin).read_text(encoding="utf-8"))