Exercices Python pour débutants - des bases aux mini-projets

Denis Ribeiro .

11 novembre 2026

Un exemple d'exercice python débutant : le code affiche la suite de Fibonacci. Le site Python propose des ressources pour apprendre.

Un bon exercice Python débutant ne consiste pas seulement à recopier quelques lignes de code. Il doit vous faire manipuler une notion précise, vous obliger à réfléchir avant de consulter la correction et vous montrer comment transformer une idée simple en programme fonctionnel. Je vous propose ici une progression concrète, avec des exercices corrigés sur les variables, les conditions, les boucles, les listes et les petits projets.

Une progression simple pour apprendre Python en pratiquant

  • Commencez par 15 à 20 minutes de recherche personnelle avant de regarder une correction.
  • Travaillez Python 3 avec des programmes très courts et faciles à tester.
  • Progressez dans cet ordre : variables, conditions, boucles, listes, fonctions.
  • Testez plusieurs cas, notamment les entrées vides, négatives ou inattendues.
  • Construisez un mini-projet dès que vous maîtrisez les notions essentielles.

Par où commencer sans se perdre

Je recommande de travailler dans un éditeur simple comme Thonny ou VS Code, avec Python 3 installé. Pour chaque exercice, créez un fichier séparé, par exemple exercice_01.py, puis exécutez-le après chaque modification. Cette habitude permet de repérer rapidement la ligne qui pose problème.

Un débutant progresse rarement en lisant uniquement des cours. La méthode la plus efficace consiste à lire une consigne, écrire une première solution imparfaite, la tester, puis améliorer le code. Même une erreur de syntaxe devient utile si vous prenez le temps de comprendre ce que Python attendait.

Étape Notions travaillées Objectif pratique
1 Variables et calculs Manipuler des nombres et du texte
2 if, else Faire réagir le programme selon une situation
3 Boucles for et while Répéter une action sans copier le code
4 Listes et chaînes Parcourir et transformer plusieurs données
5 Fonctions et projet Organiser un programme plus lisible

Je conseille de ne pas commencer par les classes, les bibliothèques complexes ou les frameworks web. Ces sujets viendront plus tard. Au début, la clarté du raisonnement compte davantage que la quantité de code produite.

Apprenez Python avec des projets concrets, idéal pour un exercice python débutant. Le logo Python est présent.

Les premiers exercices pour maîtriser les bases

Afficher un message personnalisé

Demandez le prénom de l’utilisateur et affichez un message de bienvenue. Cet exercice paraît très simple, mais il introduit deux instructions indispensables : input() récupère une information saisie au clavier et print() affiche un résultat.

prenom = input("Quel est votre prénom ? ")
print(f"Bonjour {prenom} !")

La lettre f devant la chaîne permet d’insérer une variable directement dans le texte. Je trouve cet exercice intéressant parce qu’il montre immédiatement que le programme peut recevoir une donnée et produire une réponse.

Calculer l’âge dans cinq ans

Demandez l’âge actuel de l’utilisateur, convertissez la réponse en entier, puis affichez l’âge qu’il aura dans cinq ans.

age = int(input("Quel âge avez-vous ? "))
print(f"Dans cinq ans, vous aurez {age + 5} ans.")

La fonction input() renvoie toujours du texte. Sans int(), Python ne pourrait pas additionner un nombre à cette réponse. C’est une source d’erreurs fréquente, et je recommande de retenir cette règle dès le départ : une saisie numérique doit généralement être convertie.

Vérifier si un nombre est pair

Un nombre est pair lorsque le reste de sa division par 2 est égal à zéro. En Python, l’opérateur % donne ce reste.

nombre = int(input("Entrez un nombre entier : "))

if nombre % 2 == 0:
    print("Ce nombre est pair.")
else:
    print("Ce nombre est impair.")

Observez bien l’indentation après if et else. Python l’utilise pour délimiter les blocs de code. Une indentation incorrecte peut donc empêcher le programme de fonctionner, même si la logique est juste.

Convertir des minutes en heures

Écrivez un programme qui transforme un nombre de minutes en heures et minutes. Pour 135 minutes, le résultat attendu est 2 heures et 15 minutes.

minutes = int(input("Nombre de minutes : "))

heures = minutes // 60
reste = minutes % 60

print(f"{heures} heure(s) et {reste} minute(s)")

La division entière // donne le nombre complet d’heures, tandis que % récupère le reste. Ce petit problème est excellent pour comprendre que plusieurs opérateurs peuvent être combinés pour modéliser une situation réelle.

Passer aux boucles et aux listes

Les boucles deviennent utiles dès qu’une action doit être répétée. Plutôt que d’écrire dix fois la même instruction, vous décrivez une règle que Python applique plusieurs fois. C’est à ce moment que les exercices cessent d’être de simples calculs et commencent à ressembler à de vrais programmes.

Afficher une table de multiplication

Demandez un nombre et affichez sa table de multiplication de 1 à 10. La fonction range(1, 11) produit les nombres de 1 à 10, car la borne finale n’est pas incluse.

nombre = int(input("Quelle table souhaitez-vous ? "))

for multiplicateur in range(1, 11):
    resultat = nombre * multiplicateur
    print(f"{nombre} x {multiplicateur} = {resultat}")

Ce programme permet de comprendre le rôle d’une variable de boucle. Ici, multiplicateur change à chaque passage. La subtilité de range() mérite d’être testée immédiatement, car l’oubli de la dernière valeur fait partie des erreurs les plus courantes.

Calculer la somme d’une liste

Créez une liste de nombres et calculez sa somme avec une boucle, sans utiliser directement la fonction sum(). L’objectif est de comprendre le mécanisme avant de découvrir la solution courte.

nombres = [4, 7, 2, 9, 5]
total = 0

for nombre in nombres:
    total = total + nombre

print(f"Somme : {total}")

La variable total est un accumulateur. Elle conserve le résultat obtenu au fil des tours. Une fois ce fonctionnement compris, vous pourrez comparer votre solution avec sum(nombres) et constater que les fonctions intégrées simplifient le code sans remplacer la compréhension de base.

Compter les voyelles dans une phrase

Parcourez une phrase et comptez le nombre de voyelles. Pour éviter les problèmes liés aux majuscules, transformez le texte avec lower().

phrase = input("Écrivez une phrase : ").lower()
voyelles = "aeiouy"
compteur = 0

for caractere in phrase:
    if caractere in voyelles:
        compteur += 1

print(f"Nombre de voyelles : {compteur}")

Ce type d’exercice apprend à parcourir une chaîne caractère par caractère. Il montre aussi une limite importante : les accents ne sont pas traités ici. Pour gérer correctement « é », « è » ou « à », il faudrait enrichir la liste des caractères recherchés.

Transformer les notions en mini-projets

Les exercices isolés sont utiles, mais un mini-projet oblige à combiner plusieurs notions. Je préfère proposer un programme imparfait mais terminé plutôt qu’un tutoriel beaucoup plus ambitieux abandonné au milieu. L’objectif est de faire fonctionner une première version, puis de l’améliorer.

Le jeu du nombre mystère

Le programme choisit un nombre aléatoire entre 1 et 100. L’utilisateur doit le trouver et reçoit une indication après chaque tentative.

import random

secret = random.randint(1, 100)
tentatives = 0

while True:
    proposition = int(input("Votre proposition : "))
    tentatives += 1

    if proposition < secret:
        print("C'est plus grand.")
    elif proposition > secret:
        print("C'est plus petit.")
    else:
        print(f"Bravo ! Trouvé en {tentatives} tentative(s).")
        break

Ce projet rassemble une importation, une boucle while, des conditions et un compteur. Pour le rendre plus solide, ajoutez une limite de 10 tentatives et gérez les entrées qui ne sont pas des nombres avec try et except.

Lire aussi : Couleurs Tkinter - Maîtrisez l'art du design Python

Une liste de tâches en console

Créez un menu qui permet d’ajouter une tâche, d’afficher les tâches et de quitter le programme. Une version minimale peut ressembler à ceci.

taches = []

while True:
    print("\n1. Ajouter une tâche")
    print("2. Afficher les tâches")
    print("3. Quitter")

    choix = input("Votre choix : ")

    if choix == "1":
        tache = input("Nouvelle tâche : ")
        taches.append(tache)
    elif choix == "2":
        for numero, tache in enumerate(taches, start=1):
            print(f"{numero}. {tache}")
    elif choix == "3":
        print("À bientôt.")
        break
    else:
        print("Choix invalide.")

Le programme reste volontairement simple. Il ne sauvegarde pas les tâches après la fermeture et ne permet pas encore de les supprimer. C’est précisément son intérêt : vous pouvez ajouter une seule fonctionnalité à la fois, sans perdre la maîtrise du code.

Les erreurs qui ralentissent le plus les débutants

La plupart des blocages ne viennent pas d’un manque d’intelligence, mais d’une mauvaise méthode de test. Quand un programme ne marche pas, je conseille de réduire le problème à la plus petite version possible et d’afficher les valeurs intermédiaires.

Erreur fréquente Pourquoi elle arrive Réflexe utile
Oublier int() input() renvoie du texte Convertir la saisie avant un calcul
Confondre = et == L’un affecte une valeur, l’autre compare Relire les conditions caractère par caractère
Dépasser les limites d’une liste Les positions commencent à zéro Vérifier la longueur avec len()
Créer une boucle infinie La condition du while ne change jamais Identifier clairement ce qui arrête la boucle
Copier une correction trop tôt La solution semble comprise sans être mémorisée Fermer la correction et réécrire le code seul

Je déconseille aussi de tester du code copié au hasard, surtout lorsqu’il manipule des fichiers ou exécute des commandes système. Pour progresser sans risque, utilisez des exemples courts et comprenez chaque ligne avant de l’intégrer à votre projet.

Enfin, ne cherchez pas à supprimer toutes les erreurs immédiatement. Une erreur comme TypeError, ValueError ou IndexError vous donne souvent une indication précise sur le type de problème rencontré. Lire le message d’erreur est une compétence aussi importante que connaître la syntaxe.

Un plan de 7 jours pour ancrer les bases

Pour obtenir des résultats visibles, je vous conseille une séance de 20 à 30 minutes par jour. Le premier jour, reprenez les variables et les conversions. Consacrez les jours suivants aux conditions, aux boucles, aux listes, puis à un mini-projet comme le jeu du nombre mystère.

  • Jour 1 : messages personnalisés et calculs simples.
  • Jour 2 : nombres pairs, positifs et négatifs.
  • Jour 3 : tables de multiplication et compteurs.
  • Jour 4 : listes, sommes et recherches.
  • Jour 5 : chaînes de caractères et comptage de voyelles.
  • Jour 6 : jeu du nombre mystère.
  • Jour 7 : amélioration d’un projet sans recopier la correction.

Le meilleur exercice est celui que vous pouvez expliquer avec vos propres mots. Après chaque programme, changez une règle, ajoutez un cas particulier ou réécrivez-le sous forme de fonction. C’est cette petite phase d’adaptation qui transforme une solution copiée en réflexe de programmation durable.

Questions fréquentes

Commencez par les variables et les calculs, puis abordez les conditions, les boucles, les listes et enfin les fonctions. Consacrez 15 à 20 minutes à chaque consigne avant de consulter la correction et testez plusieurs cas, notamment les entrées vides ou inattendues.
La fonction input() renvoie toujours du texte, même si l’utilisateur saisit un nombre. Il faut donc convertir la réponse avec int() avant d’effectuer un calcul, comme pour déterminer l’âge dans cinq ans ou vérifier si un nombre est pair.
Le jeu du nombre mystère permet de combiner random, une boucle while, des conditions et un compteur de tentatives. Une liste de tâches en console fait travailler les listes, les menus, append() et enumerate().
Ajoutez des cas particuliers et affichez les valeurs intermédiaires pour comprendre les erreurs. Pour le jeu du nombre mystère, vous pouvez limiter le nombre de tentatives à 10 et gérer les saisies invalides avec try et except.
Évaluer l'article

Moyenne: 5.0 / 5 · 1 évaluation

Tags

variables conditions boucles listes fonctions
Autor Denis Ribeiro
Denis Ribeiro
Je m'appelle Denis Ribeiro et j'ai quatre ans d'expérience dans le domaine de la technologie, en particulier dans les domaines du web, de l'intelligence artificielle, des réseaux et de la sécurité. Mon intérêt pour ces sujets a commencé dès mon plus jeune âge, lorsque j'ai découvert à quel point la technologie pouvait transformer notre quotidien. J'aime expliquer des concepts complexes de manière simple, afin d'aider mes lecteurs à mieux comprendre les enjeux actuels et futurs de notre monde numérique. Dans mes écrits, je m'efforce de fournir des informations utiles, précises et à jour. Je prends le temps de vérifier mes sources et de comparer les informations, tout en suivant les dernières tendances du secteur. Mon objectif est de rendre l'apprentissage accessible à tous, en organisant mes connaissances de manière claire et structurée, afin que chacun puisse naviguer avec confiance dans cet univers en constante évolution.
Commentaires (0)
Ajouter un commentaire