Avec des exercices corrigés en Python, vous pratiquerez divers concepts du langage Python. Vous commencerez par des exercices Python de base à des exercices plus avancés. La solution est fournie pour chaque exercice. Vous devez essayer de résoudre chaque problème par vous-même avant de vérifier la solution. Si vous avez des questions concernant chaque problème, nous vous encourageons à les poster sur notre forum.
Exercice 1:
Un dictionnaire Python contient List comme valeur. Ecrivez un programme Python pour effacer les valeurs de la liste dans ce dictionnaire.
Exemple:
Exemple de dictionnaire:
{'A': ['el1', 'el2', 'el3'], 'B': ['el1', 'el2']}
Effacer les valeurs de la liste dans le dictionnaire:
{'A': [], 'B': []}
Solution:
d = {'A': ['el1', 'el2', 'el3'], 'B': ['el1', 'el2']}
print(d)
print("Effacer les valeurs de la liste dans le dictionnaire:")
# Parcourez les clés de la liste « d » et utilisez la méthode « clear » pour vider les listes.
for key in d:
d[key].clear()
# Afficher le résultat
print(d)
Exercice 2:
Écrire un programme Python pour déterminer la profondeur d’un dictionnaire.
Exemple:
Exemple de dictionnaire:
{'a': 1, 'b': {'c': {'d': {}}}}
Résultat: 4
Solution:
# Définir une fonction qui calcule la profondeur (niveau d'imbrication maximum) d'un dictionnaire.
def prof_dict(d):
# Vérifier si l'entrée 'd' est un dictionnaire.
if isinstance(d, dict):
# Si 'd' est un dictionnaire, il renvoie 1 plus la profondeur maximale de ses valeurs (récursivement).
return 1 + (max(map(prof_dict, d.values())) if d else 0)
# Si 'd' n'est pas un dictionnaire, il renvoie 0 (ce qui indique qu'il n'y a pas d'imbrication).
return 0
d = {'a': 1, 'b': {'c': {'d': {}}}}
print(prof_dict(d))
Exercice 3:
Écrire un programme Python pour accéder à l’élément d’une clé de dictionnaire par son index.
Solution:
d = {'Alex': 10, 'Bob': 20, 'Emily': 30}
# Accéder à la première clé du dictionnaire et l'afficher.
print(list(d)[0])
# Accéder à la deuxième clé du dictionnaire et l'afficher.
print(list(d)[1])
# Accéder à la troisième clé du dictionnaire et l'afficher.
print(list(d)[2])
Sortie:
Alex
Bob
Emily
Exercice 4:
Écrire un programme Python pour convertir un dictionnaire en une liste de listes.
Exemple:
Dictionnaire original:
{1 : 'rouge', 2 : 'vert', 3 : 'noir'}
Convertir le dictionnaire en une liste de listes:
[[1, 'rouge'], [2, 'vert'], [3, 'noir']].
Solution:
d = {1 : 'rouge', 2 : 'vert', 3 : 'noir'}
print(d)
print("Convertir le dictionnaire en une liste de listes:")
# Utilisez la méthode items pour obtenir des paires clé-valeur, puis convertissez-les en une liste de listes.
result = list(map(list, d.items()))
# Afficher le résultat
print(result)
Exercice 5:
Écrire un programme Python pour filtrer les nombres pairs à partir des valeurs d’un dictionnaire.
Exemple:
Dictionnaire original:
{'A' : [1, 3, 6, 10], 'B' : [1, 4, 8], 'C' : [1, 3, 4]}
Filtrer les nombres pairs à partir de ces valeurs du dictionnaire:
{'A' : [6, 10], 'B' : [4, 8], 'C' : [4]}
Solution:
d = {'A' : [1, 3, 6, 10], 'B' : [1, 4, 8], 'C' : [1, 3, 4]}
print(d)
print("Filtrer les nombres pairs à partir de ces valeurs du dictionnaire:")
# Utilisez un dictionnaire de compréhension pour filtrer les nombres pairs pour chaque valeur du dictionnaire.
result = {key: [i for i in val if not i % 2] for key, val in d.items()}
# Afficher le résultat
print(result)
Exercice 6:
Écrire un programme Python pour compter la fréquence des valeurs dans un dictionnaire.
Exemple:
Dictionnaire original :
{'A' : 10, 'B' : 10, 'C' : 70, 'D' : 70, 'E' : 70, 'F' : 90}
Compter la fréquence des valeurs dans ce dictionnaire:
Counter({10 : 2, 70: 3, 90: 1})
Solution:
# Importez la classe 'Counter' du module 'collections'.
from collections import Counter
d = {'A' : 10, 'B' : 10, 'C' : 70, 'D' : 70, 'E' : 70, 'F' : 90}
print(d)
print("Compter la fréquence des valeurs dans ce dictionnaire:")
# Utilisez la classe 'Counter' pour compter la fréquence des valeurs dans le dictionnaire.
result = Counter(d.values())
# Afficher le résultat
print(result)
Exercice 7:
Écrire un programme Python pour convertir une liste de listes en un dictionnaire.
Exemple:
Liste de listes originale:
[[1, 'Alex', 'A'], [2, 'Bob', 'B'], [3, 'Jean', 'J']]
Convertir cette liste de listes en dictionnaire:
{1: ['Alex', 'A'], 2: ['Bob', 'B'], 3: ['Jean', 'J']}
Solution:
liste = [[1, 'Alex', 'A'], [2, 'Bob', 'B'], [3, 'Jean', 'J']]
print(liste)
print("Convertir cette liste de listes en dictionnaire:")
# Utiliser un dictionnaire pour convertir chaque liste en un dictionnaire,
# où le premier élément est la clé et les autres éléments sont les valeurs,
result = {item[0]: item[1:] for item in liste}
# Afficher le résultat
print(result)
Exercice 8:
Écrire un programme Python pour permuter les clés et les valeurs d’un dictionnaire.
Exemple:
Exemple de dictionnaire:
{5: 'Alex', 8: 'Bob', 9: 'Ali'}
Aprés la permutation:
{'Alex': 5, 'Bob': 8, 'Ali': 9}
Solution:
d = {5: 'Alex', 8: 'Bob', 9: 'Ali'}
print(d)
print("Aprés la permutation:")
# Créer un nouveau dictionnaire dans lequel les clés et les valeurs de 'd' sont échangées.
# Les valeurs deviennent des clés, et les clés deviennent des valeurs dans le nouveau dictionnaire.
result = {value: key for key, value in d.items()}
# Afficher le résultat
print(result)
Exercice 9:
Écrire un programme Python pour vérifier si une clé et une valeur spécifiques existent dans un dictionnaire.
Exemple:
Exemple de liste de dictionnaire:
employees = [
{'employee_id': 1, 'name': 'Jean Baopli'},
{'employee_id': 2, 'name': 'Alex Ghol'},
{'employee_id': 3, 'name': 'Emily Finol'}
]
test('employee_id',1) -> True
test('employee_id',5) -> False
Solution:
def test(dict, key, value):
# Vérifie si un sous-dictionnaire de la liste dict possède la clé donnée avec la valeur spécifiée.
if any(sub[key] == value for sub in dict):
return True # S'il est trouvé, il renvoie True.
return False # S'il n'est pas trouvé, il renvoie False.
employees = [
{'employee_id': 1, 'name': 'Jean Baopli'},
{'employee_id': 2, 'name': 'Alex Ghol'},
{'employee_id': 3, 'name': 'Emily Finol'}
]
print(test(employees, 'employee_id', 1))
print(test(employees, 'employee_id', 5))
Exercice 10:
Écrire un programme Python pour combiner deux dictionnaires ou plus, en créant une liste de valeurs pour chaque clé.
# Importez la classe defaultdict du module collections.
from collections import defaultdict
def combine_dict(*dicts):
# Créer un objet 'defaultdict' 'result' dont la valeur par défaut est une liste vide.
result = defaultdict(list)
# Parcourir les dictionnaires
for el in dicts:
# Iterate through the keys and values in each dictionary.
for key in el:
# Append the value associated with the 'key' to the list for that 'key' in 'result'.
result[key].append(el[key])
# Convertit le résultat en un dictionnaire normal et le retourné.
return dict(result)
d1 = {'a':50, 'b':100, 'c':'Vert', 'd':400}
d2 = {'b':300, 'c':'Rouge', 'd':600}
print("Dictionnaires originaux:")
print(d1)
print(d2)
print("Dictionnaires combinés:")
print(combine_dict(d1, d2))
Éditeur de code Python: Testez votre code en ligne!
QCM Python – Partie 1Questions pratiques pour testez vos connaissances sur la programmation Python à savoir des structures conditionnelles, des opérations logiques, des boucles, des fonctions, etc. Testez votre…Lire plus