Adloun

Après importer, quel est le type de eleves 0 "moyenne"

Application directe du cours · niveau 1 (application) · NSI (première), chapitre 6 — Traiter des données en tables · Lire une table, convertir ses colonnes

Énoncé

Après importer, quel est le type de eleves[0]["moyenne"] ? Et après convertir(eleves, "moyenne", float) ? Vérifier avec type.

Corrigé


eleves = importer("eleves.csv")
eleves[0]["moyenne"], type(eleves[0]["moyenne"])   # '15.5' <class 'str'>
convertir(eleves, "moyenne", float)
eleves[0]["moyenne"], type(eleves[0]["moyenne"])   # 15.5   <class 'float'>

Avant : la chaîne '15.5' — remarquez les apostrophes à l'affichage, c'est le seul indice visible. Après : le flottant .

Pourquoi c'est le piège numéro un. Un fichier texte ne contient que des caractères ; il n'a aucun moyen de dire « ceci est un nombre ». C'est au programme de le décider, colonne par colonne. Tant que ce n'est pas fait, toute comparaison, tout tri, toute moyenne portent sur des chaînes — et donnent un résultat faux sans le moindre message.

Les autres exercices de ce chapitre Le cours du chapitre

Un blocage sur cet exercice ? Le tuteur d'Adloun guide par questions, sans donner la réponse.