Programme

NSI (Spé) — Traitement de données en tables

Traitement de données en tables

Fichiers CSV, recherche, tri, fusion de tables

Résumé synthétiqueFiche en 4 sectionsQuiz de 10 questionsGratuit, sans pub

Résumé

Les données structurées sont souvent stockées dans des fichiers CSV (Comma-Separated Values), où chaque ligne est un enregistrement et les colonnes sont séparées par des virgules ou des points-virgules. En Python, le module csv lit et écrit ces fichiers, et on manipule les données en mémoire sous forme de liste de dictionnaires : chaque dictionnaire est une ligne, les noms de colonnes en sont les clés. Trois opérations reviennent sans cesse : la recherche (filtrer selon un critère), le tri (par une colonne) et la fusion de tables (jointure sur une clé commune). On peut ainsi filtrer les élèves de moyenne supérieure à 14, trier des villes par population, ou relier une table d'élèves à une table de classes.

S'entraîner

Questions fréquentes

Les points clés à retenir sur Traitement de données en tables, extraits du quiz de révision.

Que signifie CSV ?
Réponse :
Comma-Separated Values
CSV signifie Comma-Separated Values : des valeurs séparées par des virgules.
En France, quel séparateur remplace souvent la virgule dans les CSV ?
Réponse :
Le point-virgule
On utilise le point-virgule car la virgule sert déjà de séparateur décimal (14,5 au lieu de 14.5).
Avec csv.DictReader, de quel type sont les valeurs lues ?
Réponse :
str (chaîne)
DictReader lit tout comme des chaînes (str). Il faut convertir soi-même avec int() ou float().
Quelle expression filtre les élèves de moyenne > 14 ?
Réponse :
[e for e in eleves if float(e['moyenne']) > 14]
En Python, on filtre avec une liste en compréhension et une condition if, en convertissant la moyenne en float.