Adloun

Le fichier qui ment

Exercice · informatique (tronc commun des prépas scientifiques), chapitre 4 — Modules, fichiers et données

Énoncé

Un fichier contient parfois la mention NA pour signaler une valeur manquante. Adapter la lecture pour ignorer ces lignes tout en les comptant. Renvoyer le couple (liste des données valides, nombre de lignes ignorées).

Corrigé

def lire_releves_robuste(nom_fichier: str) -> tuple:
    releves = []
    ignorees = 0
    with open(nom_fichier, "r") as f:
        for ligne in f:
            ligne = ligne.strip()
            if ligne == "":
                continue
            champs = ligne.split(";")
            if len(champs) != 2 or champs[1] == "NA":
                ignorees += 1
                continue
            releves.append((champs[0], float(champs[1])))
    return (releves, ignorees)

Compter les rejets permet de valider la représentativité des données restantes (si le taux de rejet est trop élevé, les statistiques calculées perdront leur sens).

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.