Séance 3 - Dictionnaires en Python

Séance précédente (et son corrigé), séance suivante


Contenu du TP

Au menu de cette séance, les dictionnaires (aussi appelés tableaux associatifs, voir cours page 34) et toujours un peu d'expressions régulières (voir cours pages 36 et 37) !

Lisez l'énoncé du TP en faisant ce qui est demandé. Un tutoriel en anglais très complet sur les expressions régulières en Python est disponible ici : en particulier des explications sur re.group en paragraphe 4.2.

La syntaxe des diverses commandes en Python se trouve dans le cours.

Les expressions régulières selon xkcd


Indices pour le TP

Pour la question : "Affichez ces informations par login et par date (le temps de connexions sera affiché par date en minutes)" il faut utiliser des dictionnaires pour stocker un ensemble d'associations entre un login, et l'ensemble des dates où il s'est connecté.

Je vous conseille de commencer par répondre aux deux questions intermédiaires suivantes : premièrement, affichez combien de fois chaque login s'est connecté (1). Cela vous permettra de vous familiariser avec les commandes sur les dictionnaires (ajouter une association clé->valeur, chercher si une clé est présente dans la liste des clés avec NomDuDico.haskey(), récupérer la valeur associée à une clé avec NomDuDico[NomDeLaClé]).

Si on prend l'exemple de l'énoncé du TP3, je vous demande d'afficher :
pompidor s'est connecté 6 fois
meynard s'est connecté 2 fois


Indice à surligner pour afficher : dans le dictionnaire, pour chaque clé "login" qui est une chaîne de caractère (pompidor, meynard), vous stockerez une valeur entière qui indiquera le nombre de connexions (6, 2).

Puis pour résoudre la question du TP, regardez quel type de valeurs vous devez associer à chaque clé "login" : là, ce n'est plus un entier, mais une liste de jours, avec pour chacun le nombre de connexions, que vous voulez stocker. Quel type de données utiliser pour ça (2) ?


Corrigé du TP

Ici !