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:
Écrire un programme Python pour diviser une liste en différentes variables.
liste = ['a', 'b', 'c']
# Décompressez les éléments de la liste dans des variables séparées 'var1', 'var2' et 'var3'
var1, var2, var3 = liste
print(var1) #a
print(var2) #b
print(var3) #c
Exercice 2:
Écrire un programme Python pour générer des groupes de quatre nombres consécutifs dans une liste.
# Créer une liste imbriquée 'l' à l'aide d'une compréhension de liste
# Cette compréhension de liste génère une matrice 4x4 dont les éléments sont calculés à l'aide de la formule 4*i + j
l = [[4*i + j for j in range(1, 5)] for i in range(4)]
# Afficher la matrice 4x4 résultante 'l'
print(l)
Exercice 3:
Écrire un programme Python pour convertir une paire de valeurs en un tableau unique trié.
Exemple:
[(1, 2), (3, 4), (1, 2)] ➞ [1, 2, 3, 4]
Solution:
# Définir une liste contenant des tuples avec des paires de nombres
liste = [(1, 2), (3, 4), (1, 2)]
# Afficher la liste originale
print("Liste originale: ", liste)
# Utiliser un Set pour supprimer les paires de nombres en double
# et la méthode "union" pour fusionner toutes les paires uniques.
# Trier le Set résultant et afficher les données uniques triées
print("Données uniques triées:", sorted(set().union(*liste)))
Exercice 4:
Écrire un programme Python pour insérer un élément avant chaque élément d’une liste.
Exemple de sortie:
Liste originale: ['Jean', 'Alex', 'Bob']
Liste actualisée: ['c', 'Jean', 'c', 'Alex', 'c', 'Bob']
Solution:
# Définir une liste
names = ['Jean', 'Alex', 'Bob']
# Afficher la liste originale
print("Liste originale: ", names)
# Utiliser une liste de compréhension pour créer une nouvelle
# liste 'names' en insérant la lettre 'c' devant chaque élément
# de la liste originale
# Cela a pour effet de dupliquer le nom de chaque nom en ajoutant
# la lettre "c" devant celui-ci.
names = [v for elt in names for v in ('c', elt)]
# Afficher la liste actualisée des "names".
print("Liste actualisée: ", names)
Exercice 5:
Écrire un programme Python pour afficher des listes imbriquées (chaque liste sur une nouvelle ligne) à l’aide de la fonction print().
# Définir une liste "names" contenant des sous-listes, chacune avec un seul nom
names = [['Alex'], ['Jean'], ['Bob']]
# Utiliser une liste de compréhension pour créer une nouvelle liste,
# où chaque sous-liste est convertie en chaîne de caractères.
# La liste résultante contient des représentations sous forme de
# chaînes de caractères des sous-listes.
# La méthode "join" est utilisée pour concaténer les chaînes avec
# les caractères de nouvelle ligne "\n" entre elles.
# Cela crée une chaîne de plusieurs lignes où chaque sous-liste
# se trouve sur une nouvelle ligne.
# Afficher la chaîne de caractères sur plusieurs lignes
print('\n'.join([str(lst) for lst in names]))
Exercice 6:
Écrire un programme Python pour calculer la différence entre deux listes.
# Importer la classe "Counter" du module "collections"
from collections import Counter
# Définir deux listes 'color1' et 'color2' contenant des noms de couleurs
color1 = ["orange", "green", "white"]
color2 = ["black", "yellow", "green"]
# Créer des objets Counter 'counter1' et 'counter2' pour chaque liste afin
# de compter les occurrences des noms de couleurs.
counter1 = Counter(color1)
counter2 = Counter(color2)
# Afficher les éléments qui sont dans 'counter1' mais pas
# dans 'counter2' (Color1 - Color2)
print("Color1 - Color2: ", list(counter1 - counter2))
# Afficher les éléments qui se trouvent dans 'counter2' mais
# pas dans 'counter1' (Color2 - Color1)
print("Color2 - Color1: ", list(counter2 - counter1))
Exercice 7:
Écrire un programme Python pour créer une liste avec une infinité d’éléments.
Exemple de sortie:
0
1
2
3
4
...
Solution:
# Importer le module 'itertools' pour travailler avec les itérateurs et les générateurs
import itertools
# Créer un itérateur 'c' en utilisant la fonction 'count' de 'itertools'
# La fonction 'count' génère une séquence infinie de nombres à partir de 0
c = itertools.count()
# Utilisez la fonction "next" pour récupérer la valeur suivante de l'itérateur "c" et l'afficher
print(next(c))
# Récupérer et afficher la valeur suivante de l'itérateur "c"
print(next(c))
print(next(c))
print(next(c))
print(next(c))
#...
Exercice 8:
Écrire un programme Python pour remplacer le dernier élément d’une liste par une autre liste.
Exemple de sortie:
[1, 2, 3, 10], [4, 5, 6] ➞ [1, 2, 3, 4, 5, 6]
Solution:
# Définir deux listes contenant des nombres entiers
liste1 = [1, 2, 3, 10]
liste2 = [4, 5, 6]
# Mettre à jour le dernier élément de 'liste1' (en utilisant le découpage)
# pour qu'il soit la liste entière de 'liste2'
# Ceci remplace effectivement le dernier élément de 'liste1' par
# les éléments de 'liste2'
liste1[-1:] = liste2
# Affichez la liste "liste1" modifiée, qui contient désormais les
# éléments de "liste1" et de "liste2".
print(liste1)
Exercice 9:
Écrire un programme Python pour afficher le dernier élément de la liste.
Exemple de sortie:
[1, 2, 3, 4] ➞ 4
Solution:
# Define a list containing integers
liste = [1, 2, 3, 4]
# Calculer la longueur de la liste à l'aide de la fonction "len" et
# soustraire 1 pour obtenir la position du dernier élément.
res = len(liste) - 1
# Afficher le dernier élément de la liste en utilisant son index,
# qui est "res".
print(liste[res])
Exercice 10:
Ecrivez un programme Python pour trouver un tuple, la plus petite valeur de deuxième index d’une liste de tuples.
Exemple de sortie:
[(3, 2), (5, 1), (8, 0)] ➞ (8, 0)
Solution:
# Définir une liste contenant des tuples, où chaque tuple a deux éléments
liste = [(3, 2), (5, 1), (8, 0)]
print(min(liste, key=lambda n: (n[1], -n[0])))
Explication:
Ici min(liste, key=lambda n: (n[1], -n[0])) nous avons utilisé la fonction ‘min’ pour trouver l’élément minimum de la liste sur la base d’une clé personnalisée. L’argument « key » spécifie une fonction lambda qui calcule une clé pour chaque élément de « liste ». La fonction lambda calcule la clé sous la forme d’un tuple, dont le premier élément est le deuxième élément du tuple (n[1]), et le deuxième élément est la négation du premier élément (-n[0]). Cela permet de trier les tuples d’abord par leur deuxième élément dans l’ordre croissant, puis par leur premier élément dans l’ordre décroissant. La fonction « min » renvoie le n-uplet dont la valeur de clé est la plus petite.
Éditeur de code Python: Testez votre code en ligne!
QCM Python – Partie 1Bienvenue dans notre QCM Python ! Que vous soyez débutant ou déjà expérimenté en programmation, ce questionnaire à choix multiples est l’occasion parfaite de tester…Lire plus
Autre possibilité pour l’exercice 9, partie 3:
Une autre solution possible :