Python – Structures de données imbriquées – Exercices

Pour chaque exercice il vous sera demandé d’écrire des lignes de code qui permettent de les résoudre.

Toutes les résolutions d’exercices contenus dans cette page devront se situer sur le même fichier Python (.py).

Vous commenterez chaque partie de code par le numéro de l’exercice correspondant.

Créer une liste de listes par compréhension où chaque sous-liste contient les nombres de 1 à 5 multipliés par un facteur croissant de 1 à 3.

Afficher la liste de listes.

Exemple de sortie :

[[1, 2, 3, 4, 5], [2, 4, 6, 8, 10], [3, 6, 9, 12, 15]]

Créer une liste de dictionnaires où chaque dictionnaire représente un nombre n de 1 à 5 avec ses valeurs transformées en carré et en cube. Utiliser une compréhension de liste pour générer la structure.

Exemple de sortie :

[{"nombre": 1, "carré": 1, "cube": 1}, {"nombre": 2, "carré": 4, "cube": 8}, ...]

Créer un dictionnaire parite qui contient deux clés, "pairs" et "impairs", chacune contenant une liste des nombres pairs ou impairs de 1 à 20. Utiliser une compréhension de liste pour générer les valeurs de chaque liste.

Exemple de sortie :

{"pairs": [2, 4, 6, ..., 20], "impairs": [1, 3, 5, ..., 19]}

Créer une liste de dictionnaires pour trois employés, où chaque dictionnaire contient le nom, l’âge (multiples de 5 de 25 à 35), et le salaire (âge * 100) de chaque employé. Utiliser une compréhension de liste.

Exemple de sortie :

[{"nom": "Employé 1", "âge": 25, "salaire": 2500}, {"nom": "Employé 2", "âge": 30, "salaire": 3000}, ...]

Créer une liste de tuples où chaque tuple représente une paire de coordonnées (x, y) allant de (1, 1) à (3, 3). Utiliser une double boucle avec compréhension de liste.

Exemple de sortie :

[(1, 1), (1, 2), (1, 3), (2, 1), (2, 2), (2, 3), (3, 1), (3, 2), (3, 3)]

Créer un dictionnaire classe pour trois élèves ("Eleve 1", "Eleve 2", "Eleve 3"), où chaque élève a un dictionnaire notes avec "Maths" et "Physique" contenant des listes de 3 notes (de 10 à 20 en ajoutant 2 pour chaque élève et chaque matière). Utiliser une compréhension imbriquée pour générer la structure.

Exemple de sortie :

{
    "Eleve 1": {"notes": {"Maths": [10, 12, 14], "Physique": [11, 13, 15]}},
    "Eleve 2": {"notes": {"Maths": [12, 14, 16], "Physique": [13, 15, 17]}},
    ...
}

Créer un dictionnaire produits_croises contenant des clés "produit_1", "produit_2", et "produit_3", où chaque produit a un sous-dictionnaire avec "prix" (multiples de 5 jusqu’à 15) et "quantité" (multiples de 10 jusqu’à 30). Utiliser une compréhension de dictionnaire.

Exemple de sortie :

{
    "produit_1": {"prix": 5, "quantité": 10},
    "produit_2": {"prix": 10, "quantité": 20},
    "produit_3": {"prix": 15, "quantité": 30}
}

Créer une liste de dictionnaires contenant les nombres de 1 à 20 divisés en catégories "pair" et "impair". Chaque nombre pair doit être sous "pair" et les impairs sous "impair", avec une clé "carre" pour chaque nombre. Utiliser une compréhension de liste avec conditions.

Exemple de sortie :

[
    {"pair": 2, "carre": 4}, {"impair": 3, "carre": 9}, ...
]