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:
Ecrivez une fonction Python pour trouver le maximum de trois nombres.
Exemple:
(3, 7, 1) -> 7
Solution:
# Définir une fonction qui renvoie le maximum de deux nombres
def max_de_deux(x, y):
# Vérifier si x est supérieur à y
if x > y:
# Si x est plus grand, renvoyer x
return x
# Si y est supérieur ou égal à x, retourner y
return y
# Définir une fonction qui renvoie le maximum de trois nombres
def max_de_trois(x, y, z):
# Appeler la fonction max_de_deux pour trouver le maximum de y et z,
# puis le compare à x pour trouver le maximum final
return max_de_deux(x, max_de_deux(y, z))
# Afficher le résultat
print(max_de_trois(3, 7, 1))
Exercice 2:
Écrire une fonction Python pour additionner tous les nombres d’une liste.
Exemple:
(4, 2, 1, 0, 6) -> 13
Solution:
# Définir une fonction qui prend une liste de nombres en entrée.
def somme(nbrs):
# Initialiser une variable total pour stocker la somme des nombres, en commençant par 0
total = 0
# Parcourir chaque élément i de la liste nbrs.
for i in nbrs:
# Ajouter l'élément courant 'i' au 'total'
total += i
# Renvoie la somme finale stockée dans la variable 'total'.
return total
# Afficher le résultat
print(somme((4, 2, 1, 0, 6)))
Exercice 3:
Écrire une fonction Python pour multiplier tous les nombres d’une liste.
Exemple:
(4, 2, 1, 3, 6) -> 144
Solution:
# Définir une fonction qui prend une liste de nombres en entrée.
def multiply(nbrs):
# Initialiser une variable total pour stocker le résultat de la multiplication, en commençant par 1
total = 1
# Parcourir chaque élément i de la liste nbrs.
for i in nbrs:
# Multiplier l'élément courant 'i' au 'total'
total *= i
# Renvoie la multiplication finale stockée dans la variable 'total'.
return total
# Afficher le résultat
print(multiply((4, 2, 1, 0, 6)))
Exercice 4:
Écrire un programme Python pour inverser une chaîne de caractères.
Exemple:
"123hello" -> olleh321
Solution:
# Définir une fonction qui prend en entrée une chaîne de caractères str.
def reverse(str):
# Initialiser une chaîne vide 'rstr' pour stocker la chaîne inversée
rstr = ''
# Calculer la longueur de la chaîne d'entrée 'str'
index = len(str)
# Exécuter une boucle while jusqu'à ce que 'index' devienne 0
while index > 0:
# Concaténer le caractère à l'index - 1 de 'str' à 'rstr'
rstr += str[index - 1]
# Décrémenter l'index de 1 pour la prochaine itération
index = index - 1
# Renvoie la chaîne inversée stockée dans 'rstr'
return rstr
# Afficher le résultat
print(reverse("123hello"))
Exercice 5:
Écrire une fonction Python pour calculer la factorielle d’un nombre (un entier non négatif). La fonction accepte le nombre comme argument.
Exemple:
Entrez un nombre pour calculer le factiorial : 4
24
Solution:
# Définir une fonction qui calcule la factorielle d'un nombre n
def fact(n):
# Vérifier si le nombre n est égal à 0
if n == 0:
# Si n est 0, le résultat est 1 (la factorielle de 0 est 1)
return 1
else:
# Si n est différent de 0, appeler récursivement la fonction fact avec (n-1) et la multiplier par n.
return n * fact(n - 1)
# Demander à l'utilisateur de saisir un nombre pour calculer sa factorielle et la stocker dans la variable n.
n = int(input("Entrez un nombre pour calculer la factorielle:"))
# Afficher la factorielle du nombre saisi par l'utilisateur
print(fact(n))
Exercice 6:
Écrire une fonction Python pour vérifier si un nombre est compris dans un intervalle donné.
Exemple:
range(1, 5)
2 est compris dans la plage donnée.
9: Le nombre est hors de la plage donnée.
Solution:
# Définir une fonction qui vérifie si un nombre n est compris entre 1 et 5 (inclus).
def checkRange(n):
# Vérifier si n est compris dans l'intervalle de 1 à 5 (inclus) à l'aide de l'instruction 'in range()'.
if n in range(1, 5):
# Si 'n' est compris dans l'intervalle, afficher que 'n' est compris dans la plage donné.
print("%s est compris dans la plage donnée." % str(n))
else:
# Si 'n' est en dehors de la plage, afficher que le nombre est en dehors de la plage donnée.
print("Le nombre est hors de la plage donnée.")
# Appeler la fonction avec l'argument 2
checkRange(2)
Exercice 7:
Écrire un programme Python pour exécuter une chaîne de caractères contenant du code Python.
Exemple:
'print("hello world")' -> hello world
Solution:
# Définir une variable 'strcode' contenant un code Python sous forme de chaîne de caractères
strcode = 'print("hello world")'
# Définir une variable code contenant du code Python sous la forme d'une chaîne de plusieurs lignes.
code = """
def mutiply(x,y):
return x*y
print('La multiplication de 2 et 3 est: ',mutiply(2,3))
"""
# Exécuter le code Python dans 'strcode'
exec(strcode)
# Exécuter le code Python dans 'code'
exec(code)
Sortie:
hello world
La multiplication de 2 et 3 est: 6
Exercice 8:
Écrire un programme Python pour afficher les nombres pairs dans une liste donnée.
Exemple:
[1, 2, 3, 4, 5, 6, 7, 8, 9] -> [2, 4, 6, 8]
Solution:
# Définir une fonction qui prend une liste l en entrée et renvoie une liste de nombres pairs.
def nbr_paire(l):
# Créer une liste vide res pour stocker les nombres pairs
res = []
# Parcourir chaque nombre n de la liste d'entrée l.
for n in l:
# Vérifier si le nombre n est pair (divisible par 2 sans reste)
if n % 2 == 0:
# Si n est pair, il est ajouté à la liste res.
res.append(n)
# Retourne la liste 'res' contenant des nombres pairs
return res
# Afficher le résultat
print(nbr_paire([1, 2, 3, 4, 5, 6, 7, 8, 9]))
Exercice 9:
Écrire une fonction Python qui prend une liste et renvoie une nouvelle liste contenant les éléments distincts de la première liste.
Exemple:
[1, 2, 2, 2, 3, 4, 5] -> [1, 2, 3, 4, 5]
Solution:
# Définir une fonction qui prend une liste l en entrée et renvoie une liste d'éléments uniques.
def nbr_distinct(l):
# Créer une liste vide res pour stocker les éléments uniques
res = []
# Parcourir chaque élément i de la liste d'entrée l.
for i in l:
# Vérifier si l'élément i n'est pas déjà présent dans la liste res.
if i not in res:
# Si i n'est pas dans res, l'ajouter à la liste res.
res.append(i)
# Retourne la liste res contenant des éléments uniques
return res
# Afficher le résultat
print(nbr_distinct([1, 2, 2, 2, 3, 4, 5]))
Exercice 10:
Ecrivez une fonction Python qui prend un nombre en paramètre et vérifie si le nombre est premier ou non.
Note: Un nombre premier est un nombre naturel supérieur à 1 et qui n’a pas d’autres diviseurs positifs que 1 et lui-même.
Exemple:
9 -> False
17 -> True
Solution:
# Définir une fonction qui vérifie si un nombre n est un nombre premier
def nbr_premier(n):
# Vérifier si 'n' est égal à 1
if (n == 1):
# Si 'n' est 1, le résultat est False (1 n'est pas un nombre premier)
return False
# Vérifier si 'n' est égal à 2
elif (n == 2):
# Si 'n' est 2, retournez True (2 est un nombre premier)
return True
else:
# Parcourir les nombres de 2 à (n-1) en utilisant 'x' comme itérateur.
for x in range(2, n):
# Vérifier si 'n' est divisible par 'x' sans aucun reste
if (n % x == 0):
# Si 'n' est divisible par 'x', retournez False (ce n'est pas un nombre premier)
return False
# Si 'n' n'est pas divisible par un nombre compris entre 2 et (n-1), retournez True (nombre premier)
return True
# Afficher le résultat
print(nbr_premier(17))
É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