Easier to read with cream paper, a tint, more contrast or larger text? Choose your colours and text, once, for every page.

Aperçu

Le fichier CSV

Voici la première page de la leçon. Lis-la et essaie les activités. La suite est dans le cours complet.

30 minutes

Le tableau qui n’est que du texte

Ton prof t’envoie les notes de la classe en pièce jointe. Tu l’ouvres dans un tableur et tu vois un tableau.

Mais ouvre-le avec le bloc-notes : ce n’est que du texte, avec des points-virgules. C’est un fichier CSV.

Un programme peut lire ce texte et répondre à tes questions. Dans cette leçon, tu apprends à le faire.

Mots-clés

MotCe que ça veut direExemple
TableDes données rangées en lignes et en colonnes.Les notes de la classe
LigneUn élément de la table, avec toutes ses valeurs.Léa;14;16
ColonneToutes les valeurs d’un même sujet.Toutes les notes de maths
CSVUn fichier de texte qui contient une table.notes.csv
SéparateurLe signe qui coupe les valeurs sur une ligne.Le point-virgule ;
DescripteurLe nom d’une colonne. Ils sont sur la première ligne.nom;maths;francais
ValeurCe qu’il y a dans une case de la table.14
splitLe mot de Python qui coupe un texte en morceaux."a;b".split(";") donne ["a", "b"]

Les cellules que les étudiants remplissent restent vides dans cet aperçu.

Un tableau écrit en texte

Dans un fichier CSV, chaque ligne du texte est une ligne de la table.

Sur une ligne, un séparateur coupe les valeurs. En France, on utilise souvent le point-virgule.

La première ligne donne le nom des colonnes : ce sont les descripteurs.

À toi : couper un texte en lignes

Code: python
texte = """nom;maths;francais
Léa;14;16
Karim;9;12
Sofia;17;15
Hugo;12;8"""

print(texte)
print()
print(texte.split("\n"))   # \n est le saut de ligne

# Combien de lignes y a-t-il ? Écris print(len(texte.split("\n"))).

Exemple travaillé : une ligne devient une liste

Ligne du texteAprès split(";")Nombre de valeurs
nom;maths;francais["nom", "maths", "francais"]3
Léa;14;16["Léa", "14", "16"]3
Karim;9;12["Karim", "9", "12"]3
Hugo;12;8["Hugo", "12", "8"]3

Les cellules que les étudiants remplissent restent vides dans cet aperçu.

Pourquoi un point-virgule ?

En français, on écrit 12,5 avec une virgule. Si le séparateur était la virgule, 12,5 serait coupé en deux valeurs.

Dans d’autres pays, le séparateur est souvent la virgule.

Avant de lire un fichier, regarde donc quel séparateur il utilise.

À toi : bon ou mauvais séparateur

Code: python
ligne = "Karim;9;12"

print(ligne.split(";"))   # le bon séparateur
print(ligne.split(","))   # le mauvais : tout reste collé

valeurs = ligne.split(";")
print("Élève :", valeurs[0])
print("Maths :", valeurs[1])

# Que donne valeurs[2] ? Et valeurs[3] ?
# Lis bien le message d’erreur de valeurs[3].

Tout est du texte

Attention

Après split, la valeur "14" est du texte, pas un nombre. "14" + "9" donne "149". Pour calculer, écris int(valeurs[1]).

Contrôle rapide

À toi de jouer

Contrôle rapide

4 questions
Essayez : vos réponses sont notées ici puis oubliées. Connectez-vous si vous voulez conserver votre score et reprendre là où vous en étiez.Se connecter pour conserver mon score

Tes réponses sont corrigées ici et ne sont pas conservées. Un compte garde tes résultats.

La leçon continue

10 parties de plus de cette leçon se trouvent dans le cours complet, avec les exercices et la vérification finale. Un compte te donne tout.