Header
🠖 Thème 4 - Données

Programmation

Traitement de données avec Python

L'objectif de cette activité est de traiter des données contenues dans des fichiers .csv avec le langage Python :
  • Ouvrir et lire un fichier de données.
  • Croiser des données avec deux fichiers.

Téléchargement des fichiers

Télécharger l'archive 4-donnees-python.7z. Le placer dans votre répertoire de travail, puis le décompresser.

Vous devez obtenir trois fichiers :
  • baselog.csv (table de données)
  • basemail.csv (table de données)
  • programme.py (script Python)
Le programme suivant, contenu dans l'archive déjà téléchargée dans le fichier programme.py, permet d'ouvrir et d'extraire les informations des deux tables baselog.csv et basemail.csv.
import csv # import du module csv # Lecture du fichier baselog.csv with open("baselog.csv", encoding="UTF8") as f: log = list(csv.reader(f)) # Lecture du fichier basemail.csv with open("basemail.csv", encoding="UTF8") as f: mail = list(csv.reader(f)) # Affichage print("----------------------------") print("Affichage des deux listes : ") print("LOG : \n", log) print("MAIL : \n", mail) print("----------------------------") # Exercice : print("Question 1 : ", len(log)) print("Question 2 : ", len(log[0])) print("Question 3 : ", log[0]) print("Question 4 : ", log[2]) print("Question 5 : ", log[0][0]) print("Question 6 : ", log[1][0]) print("Question 7 : ", log[0][1]) print("Question 8 : ", log[1][1])
  1. Expliquer les différents print(...) qui suivent le commentaire # Exercice :.
  2. Quel est le descripteur (champ) commun aux 2 tables ?

Traitement des données

L'objectif est de fusionner les deux tables afin de faire correspondre les logins aux bons mots de passes.
Ecrire la (ou les) ligne(s) de langage Python pour :
  1. Afficher les descripteurs de la table basemail.
    print(mail[0])
  2. Afficher la liste des login.
    for data in log: print(data[1])
  3. Afficher la liste des mots de passe (en vous aidant de la réponse précédente).
  4. Afficher le login de Colette
    rep = [x[1] for x in log if x[0] == "Colette"][0] print(rep)
  5. Afficher le mot de passe de Colette (en vous aidant de la réponse précédente).
  6. Faire valider par l'enseignant les réponses 3 et 5.