5. Structures de données composites
Résumé
Dans le chapitre 2, nous avons déjà manipulé des données de différents
types: les nombres entiers, les nombres réels et les chaînes de
caractères. Il est temps à présent d'examiner
d'un peu plus près de nouvelles structures de données
offertes par Python: les conteneurs. De façon générale, un
conteneur est un objet composite destiné à contenir
d'autres objets. Les conteneurs sont généralement
regroupés en deux catégories: les séquences et les
tableaux associatifs. Une séquence est un conteneur ordonnés
d'éléments indicés par des entiers. Python dispose de
trois types prédéfinis de séquences: les chaînes de caractères,
les listes et les tuples. Un tableau associatif est
quant à lui un type de données permettant de stocker des couples
clé-valeur avec un accès très rapide à la valeur à partir de la clé.
Python propose un type de tableau associatif: les
dictionnaires. Ce chapitre se propose de discuter des
caractéristiques principales et des contextes
d'utilisation de ces différentes structures de données
composites offerte par Python.
Objectifs du chapitre
Au terme de ce chapitre, chaque étudiant devra être capable de:
- préciser la différence principale entre une variable de type
simple et une variable de type composite et
l'illustrer au travers d'un exemple;
- expliquer en quoi consiste une variable de type composite;
- énumérer les principaux conteneurs sous Python et indiquer la
nature des valeurs qui les composent;
- préciser la principale différence entre une séquence et un tableau
associatif;
- créer, initialiser et insérer des éléments dans un conteneur;
- identifier et préciser le rôle d'un index (respectivement
d'une clé) dans une variable de type composite;
- utiliser l'indexation et le slicing pour
accéder aux éléments composant une variable de type composite;
- parcourir un conteneur et agir sur chacun des éléments qui le
composent;
- préciser la différence entre un appel de fonction et une
invocation de méthode et l'illustrer au travers
d'exemples;
- utiliser les principaux opérateurs, fonctions et méthodes agissant
sur les conteneurs ( insertion, suppression, recherche,
remplacement,...);
- récupérer la documentation propre à une méthode à
l'aide du menu Help de Idle;
- préciser la différence entre une copie et un alias;
- formater une chaîne de caractères à l'aide de la
méthode format;
- générer un nombre aléatoire compris entre deux nombres donnés;
- utiliser les conteneurs dans la réalisation
d'histogrammes de fréquences;
- utiliser un dictionnaire pour contrôler le flux
d'exécution d'un programme ;
- expliquer chacun des termes informatiques apparaissant dans le
glossaire du chapitre.
Documents du chapitre
Corrigés des exercices
Pour chacun des exercices du cours, les corrigés ci-dessous doivent permettre à l'élève d'observer le résultat à obtenir (double-clic sur le fichier test) et de vérifier/comparer sa résolution avec une solution possible (éditer le fichier solution):