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 extraire des nombres d’une chaîne donnée.
Exemple:
Exemple de chaîne: "rue 30 quartie 101 louis"
Résultat: [30, 101]
Solution:
str = "rue 30 quartie 101 louis"
# Utiliser une liste de compréhension pour extraire les nombres entiers de la chaîne s'il s'agit de chiffres.
result = [int(str) for str in str.split() if str.isdigit()]
print(result)
Exercice 2:
Écrire un programme Python pour convertir les valeurs des composants RGB en un code couleur hexadécimal.
r = 255
g = 255
b = 255
# Utiliser le formatage de chaîne pour convertir les valeurs RGB en code couleur hexadécimal.
result = ('{:02X}' * 3).format(r, g, b)
print(result)
Exercice 3:
Écrire un programme Python pour convertir une chaîne de caractères donnée en Camelcase.
# Importer la fonction sub du module re pour la substitution d'expressions régulières
from re import sub
str = "wayto--learnx"
# Utiliser la substitution d'expressions régulières pour remplacer les traits de soulignement et les traits d'union par des espaces,
# puis mettre la chaîne en majuscules (mettre la première lettre de chaque mot en majuscule), et supprimer les espaces
str = sub(r"(_|-)+", " ", str).title().replace(" ", "")
# Regrouper la chaîne de caractères en veillant à ce que la première lettre soit en majuscule.
result = ''.join([str[0].upper(), str[1:]])
print(result)
Exercice 4:
Écrire un programme Python pour convertir une chaîne de caractères donnée en snake_case.
# Importer la fonction sub du module re pour la substitution d'expressions régulières
from re import sub
str = "JavaScript"
# Remplacer les traits d'union par des espaces, puis appliquer des substitutions d'expressions régulières pour la conversion de la casse des titres
# et ajoute un underscore entre les mots, puis convertit le résultat en minuscules
result = '_'.join(
sub('([A-Z][a-z]+)', r' \1',
sub('([A-Z]+)', r' \1',
str.replace('-', ' '))).split()).lower()
print(result)
Exercice 5:
Écrire un programme Python pour décapitaliser la première lettre d’une chaîne donnée.
Exemple:
JavaScript-> javaScript
Python-> python
Solution:
str = "Python"
# Joindre la première lettre en minuscule au reste de la chaîne
result = ''.join([str[:1].lower(), str[1:]])
print(result)
Exercice 6:
Écrire un programme Python pour diviser une chaîne de plusieurs lignes en une liste.
Exemple:
Exemple de chaîne: Ceci
est une
chaîne de
plusieurs
lignes
Résultat: ['Ceci', 'est une', 'chaîne de', 'plusieurs', 'lignes']
Solution:
str = "Ceci\nest une\nchaîne de\nplusieurs\nlignes"
# Utiliser la méthode split() avec '\n' comme délimiteur pour créer une liste de lignes.
result = str.split('\n')
print(result)
Exercice 7:
Écrire un programme Python pour additionner deux chaînes de caractères comme s’il s’agissait de nombres (valeurs entières positives). Renvoyer un message si les nombres sont des chaînes de caractères.
Exemple:
'1' + '2' -> 3
'a' + 'str' -> Erreur!
Solution:
# Définir une fonction permettant d'additionner deux nombres représentés sous forme de chaînes de caractères
def add(n1, n2):
# Ajouter '0' au début de chaque chaîne pour gérer les nombres négatifs
n1, n2 = '0' + n1, '0' + n2
# Vérifier si les deux chaînes sont numériques
if (n1.isnumeric() and n2.isnumeric()):
# Si true, convertit les chaînes en entiers, les additionne et renvoie le résultat sous forme de chaîne.
return str(int(n1) + int(n2))
else:
# Si elle n'est pas numérique, elle renvoie un message d'erreur
return 'Erreur!'
print(add("1", "2"))
print(add("a", "str"))
Exercice 8:
Écrire un programme Python pour supprimer les ponctuations dans une chaîne de caractères donnée.
Exemple:
Exemple de chaîne: 'Chaîne! Avec. Des ponctuation ?'
Résultat: Chaîne Avec Des ponctuation
Solution:
# Importer le module string pour accéder à des chaînes de caractères de ponctuation.
import string
str = "Chaîne! Avec. Des ponctuation ?"
# Parcourir chaque caractère de ponctuation et le remplacer par une chaîne vide
for c in string.punctuation:
str = str.replace(c, "")
print(str)
Exercice 9:
Écrire un programme Python qui met en majuscules la première lettre de caque mot d’une chaîne donnée.
Exemple:
Exemple de chaîne: 'welcome to waytolearnx!'
Résultat: Welcome To Waytolearnx!
Solution:
str = "welcome to waytolearnx!"
# mettre chaque mot en majuscule et les relier par des espaces.
result = ' '.join(word.capitalize() for word in str.split())
print(result)
Exercice 10:
Ecrire un programme Python pour extraire et afficher le nom d’une adresse email donnée.
email = "[email protected]"
# Trouver l'index du symbole '@' dans l'adresse e-mail
r = email.index("@")
# joindre les caractères alphabétiques avant le symbole '@'.
result = "".join(l for l in email[:r] if l.isalpha())
print(result)
Exercice 11:
Écrire un programme Python pour insérer un espace avant chaque lettre majuscule apparaissant dans un mot donné.
str = "ExercicesPython"
result = ""
# Parcourir chaque caractère du mot
for i in str:
# Vérifier si le caractère est majuscule
if i.isupper():
# Concaténer un espace et la version majuscule du caractère au résultat.
result = result + " " + i.upper()
else:
# Concaténer le caractère au résultat
result = result + i
# Supprimez l'espace en tête du résultat et affichez
print(result[1:])
É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
Another possible solution, probably a bit more pythonic:
def add(n1, n2):
result=0
for i in [n1, n2]:
try:
result += int(i)
except ValueError:
return f"Erreur!"
return result
print(add("1", "2"))
print(add("a", "str"))
Dans la solution de l’exercice 3:
Je ne comprend pas l’interet de remplacer (_|-) par
" "
puis de remplacer" "
par""
?Pourquoi ne pas faire simplement:
Note que l’on obtient le même résultat.
Another possible solution, probably a bit more pythonic: