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.