Cours de Python pour Débutants
Semaine 1 : Les Fondations
[Link]
Un guide complet avec explications et exemples
11 décembre 2025
Objectifs de la semaine
— Installer Python et configurer son environnement
— Comprendre les variables et types de données
— Maîtriser les opérations de base
— Utiliser les structures conditionnelles
— Créer son premier projet : une calculatrice interactive
Cours Python - Semaine 1 1
Table des matières
1 Introduction à Python 2
1.1 Qu’est-ce que Python ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2 Installation et Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . 2
2 Jour 1 : Premier Programme 2
2.1 Hello World ! . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
2.2 Exécution d’un programme . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
2.3 Exercice 1.1 : Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
3 Jour 2 : Variables et Types de Données 3
3.1 Les Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
3.2 Types de Données de Base . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
3.3 Vérification du Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
3.4 Saisie Utilisateur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
3.5 Conversion de Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
3.6 Exercice 2.1 : Calculateur d’IMC . . . . . . . . . . . . . . . . . . . . . . . 4
4 Jour 3 : Opérations de Base 5
4.1 Opérations Mathématiques . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
4.2 Priorité des Opérations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
4.3 Opérateurs de Comparaison . . . . . . . . . . . . . . . . . . . . . . . . . . 5
4.4 Opérateurs Logiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
4.5 Exercice 3.1 : Vérification de Permis . . . . . . . . . . . . . . . . . . . . . 6
5 Jour 4 : Structures Conditionnelles 6
5.1 Instruction if Simple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
5.2 Structure if-else . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
5.3 Structure if-elif-else . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
5.4 Conditions Imbriquées . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
5.5 Opérateur Ternaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
5.6 Exercice 4.1 : Système de Notation . . . . . . . . . . . . . . . . . . . . . . 8
6 Projet : Calculatrice Interactive 9
7 Récapitulatif et Bonnes Pratiques 12
7.1 Concepts Maîtrisés . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
7.2 Bonnes Pratiques Acquises . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
7.3 Exercices Supplémentaires . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
8 Préparation de la Semaine 2 13
8.1 Concepts à Venir . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
8.2 Ressources Recommandées . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
9 Conclusion 13
Cours Python - Semaine 1 2
1 Introduction à Python
1.1 Qu’est-ce que Python ?
Python est un langage de programmation :
— Interprété : Exécuté ligne par ligne par un interpréteur
— Multi-paradigme : Supporte la programmation orientée objet, fonctionnelle et
impérative
— Lisible : Syntaxe claire et épurée, proche du langage naturel
— Polyvalent : Utilisable pour le web, la data science, l’automatisation, etc.
1.2 Installation et Configuration
Étapes d’installation
1. Télécharger Python depuis [Link]
2. Installer en cochant "Add Python to PATH" (Windows)
3. Vérifier l’installation : python --version
4. Choisir un éditeur (VS Code recommandé)
2 Jour 1 : Premier Programme
2.1 Hello World !
Le traditionnel premier programme en Python :
1 # premi er_progr amme . py
2 print ( " Hello World ! " )
3 print ( " Bienvenue dans l ’ apprentissage de Python ! " )
4
5 # Explications :
6 # - print () affiche du texte l ’ cran
7 # - Le texte entre guillemets est une c h a n e de c a r a c t r e s
8 # - # permet d ’ crire des commentaires
Listing 1 – Premier programme Python
2.2 Exécution d’un programme
— Dans VS Code : Ctrl+F5 ou bouton "Run"
— Terminal : python nom_du_fichier.py
2.3 Exercice 1.1 : Présentation
1 print ( " === P R S E N T A T I O N === " )
2 print ( " Nom : [ Votre Nom ] " )
3 print ( " ge : [ Votre ge ] " )
4 print ( " Objectif : Apprendre Python en 2024 " )
5 print ( " Premier pas r u s s i ! ")
Cours Python - Semaine 1 3
Listing 2 – Exercice de présentation
3 Jour 2 : Variables et Types de Données
3.1 Les Variables
Une variable est un conteneur pour stocker des données.
1 # D c l a r a t i o n de variables
2 nom = " Alice " # C h a n e de c a r a c t r e s ( str )
3 age = 25 # Nombre entier ( int )
4 taille = 1.75 # Nombre d c i m a l ( float )
5 est_etudiant = True # B o o l e n ( bool )
6
7 # Affichage
8 print ( " Nom : " , nom )
9 print ( " ge : " , age , " ans " )
10 print ( " Taille : " , taille , " m " )
11 print ( " tudiant : " , est_etudiant )
Listing 3 – Déclaration de variables
3.2 Types de Données de Base
Type Nom Exemple Description
int Entier 42, -5 Nombre sans virgule
float Flottant 3.14, -2.5 Nombre avec virgule
str Chaîne "Bonjour" Texte entre guillemets
bool Booléen True, False Valeur vraie ou fausse
Table 1 – Types de données de base en Python
3.3 Vérification du Type
1 # V r i f i e r le type d ’ une variable
2 x = 42
3 y = " Hello "
4 z = 3.14
5
6 print ( type ( x ) ) # < class ’ int ’>
7 print ( type ( y ) ) # < class ’ str ’>
8 print ( type ( z ) ) # < class ’ float ’>
3.4 Saisie Utilisateur
Cours Python - Semaine 1 4
1 # Demander des informations l ’ utilisateur
2 prenom = input ( " Quel est votre p r n o m ? " )
3 age = input ( " Quel est votre ge ? " )
4
5 print ( f " Bonjour { prenom } , vous avez { age } ans . " )
Important : input() retourne toujours une chaîne de caractères.
3.5 Conversion de Types
1 # Conversion entre types
2 age_texte = " 25 " # C h a n e de c a r a c t r e s
3 age_nombre = int ( age_texte ) # Conversion en entier
4
5 prix = 19.99
6 prix_texte = str ( prix ) # Conversion en texte
7
8 # Conversions courantes
9 int ( " 42 " ) 42
10 float ( " 3.14 " ) 3.14
11 str (100) " 100 "
12 bool (1) True
3.6 Exercice 2.1 : Calculateur d’IMC
1 print ( " === CALCULATEUR D ’ IMC === " )
2
3 # Saisie des d o n n e s
4 poids = float ( input ( " Votre poids ( kg ) : " ) )
5 taille = float ( input ( " Votre taille ( m ) : " ) )
6
7 # Calcul
8 imc = poids / ( taille ** 2)
9
10 # Affichage
11 print ( f " \ nPoids : { poids } kg " )
12 print ( f " Taille : { taille } m " )
13 print ( f " IMC : { imc :.1 f } " ) # Formatage 1 d cimale
14
15 # Interpr tation
16 if imc < 18.5:
17 categorie = " Insuffisance p o n d r a l e "
18 elif imc < 25:
19 categorie = " Poids normal "
20 elif imc < 30:
21 categorie = " Surpoids "
22 else :
23 categorie = " O b s i t "
24
25 print ( f " C a t g o r i e : { categorie } " )
Listing 4 – Calculateur d’Indice de Masse Corporelle
Cours Python - Semaine 1 5
4 Jour 3 : Opérations de Base
4.1 Opérations Mathématiques
1 a = 10
2 b = 3
3
4 # O p r a t i o n s de base
5 addition = a + b # 13
6 soustraction = a - b # 7
7 multiplication = a * b # 30
8 division = a / b # 3.333...
9
10 # Division e n t i r e et modulo
11 division_entiere = a // b # 3 ( quotient )
12 reste = a % b # 1 ( reste )
13
14 # Puissance
15 carre = a ** 2 # 100
16 cube = b ** 3 # 27
4.2 Priorité des Opérations
L’ordre d’évaluation suit les règles mathématiques classiques :
1. Parenthèses : ()
2. Puissance : **
3. Multiplication/Division : * / // %
4. Addition/Soustraction : + -
4.3 Opérateurs de Comparaison
1 x = 10
2 y = 5
3
4 print ( x == y ) # False - galit
5 print ( x != y ) # True - diff rence
6 print ( x > y) # True - sup rieur
7 print ( x < y) # False - inf rieur
8 print ( x >= y ) # True - s u p r i e u r ou gal
9 print ( x <= y ) # False - i n f r i e u r ou gal
4.4 Opérateurs Logiques
1 # Exemples d ’ o p r a t e u r s logiques
2 age = 20
3 permis = True
4
5 peut_conduire = ( age >= 18) and permis
6 print ( peut_conduire ) # True
7
Cours Python - Semaine 1 6
Opérateur Description Exemple
and ET logique True and False → False
or OU logique True or False → True
not NON logique not True → False
Table 2 – Opérateurs logiques en Python
8 # Combinaisons complexes
9 bonne_meteo = ( temperature > 20) and ( not pluie ) and ( vent < 30)
4.5 Exercice 3.1 : Vérification de Permis
1 print ( " === V R I F I C A T I O N LIGIBILIT PERMIS === " )
2
3 age = int ( input ( " ge : " ) )
4 code = input ( " Code obtenu ? ( oui / non ) : " ) . lower () == " oui "
5 examen = input ( " Examen pratique r u s s i ? ( oui / non ) : " ) . lower () == " oui
"
6 points = int ( input ( " Points restants : " ) )
7
8 # Conditions
9 conditions = [
10 age >= 18 ,
11 code ,
12 examen ,
13 points >= 6
14 ]
15
16 # Affichage des v r i f i c a t i o n s
17 print ( " \ n " + " = " *40)
18 print ( " V R I F I C A T I O N S : " )
19 for i , ( cond , label ) in enumerate ( zip (
20 conditions ,
21 [ " ge 18 " , " Code " , " Examen pratique " , " Points 6"]
22 ) , 1) :
23 print ( f " { i }. { label }: { ’ ’ if cond else ’ ’} " )
24
25 # D c i s i o n finale
26 if all ( conditions ) :
27 print ( " \ n LIGIBLE : Vous pouvez obtenir votre permis ! " )
28 else :
29 print ( " \ n NON LIGIBLE : Conditions non remplies " )
Listing 5 – Système de vérification pour le permis
5 Jour 4 : Structures Conditionnelles
5.1 Instruction if Simple
1 temperature = 30
2
3 if temperature > 25:
Cours Python - Semaine 1 7
4 print ( " Il fait chaud " )
5 print ( " Buvez de l ’ eau " )
6
7 print ( " Cette ligne s ’ e x c u t e toujours " )
5.2 Structure if-else
1 age = 17
2
3 if age >= 18:
4 print ( " A c c s a u t o r i s " )
5 print ( " Vous tes majeur " )
6 else :
7 print ( " A c c s r e f u s " )
8 print ( " Vous tes mineur " )
5.3 Structure if-elif-else
1 note = 85 # sur 100
2
3 if note >= 90:
4 mention = " A - Excellent "
5 elif note >= 80:
6 mention = " B - T r s bien "
7 elif note >= 70:
8 mention = " C - Bien "
9 elif note >= 60:
10 mention = " D - Assez bien "
11 else :
12 mention = " E - Insuffisant "
13
14 print ( f " Note : { note }/100 { mention } " )
5.4 Conditions Imbriquées
1 age = 20
2 revenu = 25000
3
4 if age >= 18:
5 if revenu > 20000:
6 print ( " ligible pour un p r t " )
7 print ( " Taux avantageux disponible " )
8 else :
9 print ( " ligible mais revenu insuffisant " )
10 else :
11 print ( " Non ligible ( mineur ) " )
5.5 Opérateur Ternaire
Cours Python - Semaine 1 8
1 # Syntaxe : valeur_si_vrai if condition else valeur_si_faux
2
3 age = 20
4
5 # Version longue
6 if age >= 18:
7 statut = " majeur "
8 else :
9 statut = " mineur "
10
11 # Version courte ( ternaire )
12 statut = " majeur " if age >= 18 else " mineur "
13
14 print ( f " { age } ans , vous tes { statut } " )
5.6 Exercice 4.1 : Système de Notation
1 print ( " === S Y S T M E DE NOTATION === " )
2
3 # Saisie s c u r i s e
4 while True :
5 try :
6 note = float ( input ( " Note (0 -20) : " ) )
7 if 0 <= note <= 20:
8 break
9 else :
10 print ( " Note doit tre entre 0 et 20 " )
11 except :
12 print ( " Entrez un nombre valide " )
13
14 # D t e r m i n a t i o n de la mention
15 if note >= 18:
16 lettre , description = " A " , " Excellent "
17 couleur = " \033[92 m " # Vert
18 elif note >= 16:
19 lettre , description = " B " , " T r s bien "
20 couleur = " \033[94 m " # Bleu
21 elif note >= 14:
22 lettre , description = " C " , " Bien "
23 couleur = " \033[96 m " # Cyan
24 elif note >= 12:
25 lettre , description = " D " , " Assez bien "
26 couleur = " \033[93 m " # Jaune
27 elif note >= 10:
28 lettre , description = " E " , " Passable "
29 couleur = " \033[33 m " # Orange
30 else :
31 lettre , description = " F " , " Insuffisant "
32 couleur = " \033[91 m " # Rouge
33
34 # Affichage c o l o r
35 print ( f " \ n { couleur }{ ’= ’*40}\033[0 m " )
36 print ( f " { couleur } NOTE : { note }/20\033[0 m " )
37 print ( f " { couleur } MENTION : { lettre } - { description }\033[0 m " )
38 print ( f " { couleur }{ ’= ’*40}\033[0 m " )
Cours Python - Semaine 1 9
Listing 6 – Système complet de notation
6 Projet : Calculatrice Interactive
1 """
2 CALCULATRICE INTERACTIVE
3 Projet de fin de semaine 1
4 """
5
6 def afficher_menu () :
7 " " " Affiche le menu principal de la calculatrice " " "
8 print ( " \ n " + " = " *50)
9 print ( " CALCULATRICE INTERACTIVE " )
10 print ( " = " *50)
11 print ( " 1. Addition (+) " )
12 print ( " 2. Soustraction ( -) " )
13 print ( " 3. Multiplication ( ) " )
14 print ( " 4. Division ( ) " )
15 print ( " 5. Puissance (^) " )
16 print ( " 6. Modulo (%) " )
17 print ( " 7. Afficher l ’ historique " )
18 print ( " 8. Quitter " )
19 print ( " -" *50)
20
21 def saisir_nombre ( message ) :
22 " " " Demande un nombre l ’ utilisateur avec gestion d ’ erreurs " " "
23 while True :
24 try :
25 return float ( input ( f " { message } : " ) )
26 except ValueError :
27 print ( " Erreur : Veuillez entrer un nombre valide " )
28
29 def o per at io n_a dd it ion () :
30 " " " Effectue une addition " " "
31 print ( " \n - - - ADDITION ---" )
32 a = saisir_nombre ( " Premier nombre " )
33 b = saisir_nombre ( " D e u x i m e nombre " )
34 resultat = a + b
35 print ( f " { a } + { b } = { resultat } " )
36 return resultat , f " { a } + { b } = { resultat } "
37
38 def o p e r a t i o n _ s o u s t r a c t i o n () :
39 " " " Effectue une soustraction " " "
40 print ( " \n - - - SOUSTRACTION ---" )
41 a = saisir_nombre ( " Premier nombre " )
42 b = saisir_nombre ( " D e u x i m e nombre " )
43 resultat = a - b
44 print ( f " { a } - { b } = { resultat } " )
45 return resultat , f " { a } - { b } = { resultat } "
46
47 def o p e r a t i o n _ m u l t i p l i c a t i o n () :
48 " " " Effectue une multiplication " " "
49 print ( " \n - - - MULTIPLICATION ---" )
50 a = saisir_nombre ( " Premier nombre " )
Cours Python - Semaine 1 10
51 b = saisir_nombre ( " D e u x i m e nombre " )
52 resultat = a * b
53 print ( f " { a } { b } = { resultat } " )
54 return resultat , f " { a } { b } = { resultat } "
55
56 def o per at io n_d iv is ion () :
57 " " " Effectue une division avec v r i f i c a t i o n du diviseur " " "
58 print ( " \n - - - DIVISION ---" )
59 a = saisir_nombre ( " N u m r a t e u r " )
60
61 while True :
62 b = saisir_nombre ( " D n o m i n a t e u r " )
63 if b != 0:
64 break
65 print ( " Impossible de diviser par z r o ! " )
66
67 resultat = a / b
68 print ( f " { a } { b } = { resultat :.4 f } " )
69 return resultat , f " { a } { b } = { resultat :.4 f } "
70
71 def o p er at io n _p u i ss a nc e () :
72 " " " Calcule une puissance " " "
73 print ( " \n - - - PUISSANCE ---" )
74 base = saisir_nombre ( " Base " )
75 exposant = saisir_nombre ( " Exposant " )
76 resultat = base ** exposant
77 print ( f " { base }^{ exposant } = { resultat } " )
78 return resultat , f " { base }^{ exposant } = { resultat } "
79
80 def operation_modulo () :
81 " " " Calcule le modulo ( reste de la division ) " " "
82 print ( " \n - - - MODULO ---" )
83 a = saisir_nombre ( " Premier nombre " )
84
85 while True :
86 b = saisir_nombre ( " D e u x i m e nombre " )
87 if b != 0:
88 break
89 print ( " Impossible de calculer modulo z r o ! " )
90
91 resultat = a % b
92 print ( f " { a } % { b } = { resultat } " )
93 return resultat , f " { a } % { b } = { resultat } "
94
95 def a f fi ch er _ hi s t or i qu e ( historique ) :
96 " " " Affiche l ’ historique des calculs " " "
97 if not historique :
98 print ( " \ n Historique vide " )
99 return
100
101 print ( " \ n " + " = " *50)
102 print ( " HISTORIQUE DES CALCULS " )
103 print ( " = " *50)
104
105 for i , ( resultat , operation ) in enumerate ( historique , 1) :
106 print ( f " { i :2 d }. { operation } " )
107
108 # Statistiques
Cours Python - Semaine 1 11
109 if historique :
110 moyenne = sum ( r for r , _ in historique ) / len ( historique )
111 print ( f " \ n Statistiques : " )
112 print ( f " Nombre d ’ o p r a t i o n s : { len ( historique ) } " )
113 print ( f " Moyenne des r s u l t a t s : { moyenne :.2 f } " )
114
115 def main () :
116 " " " Fonction principale de la calculatrice " " "
117 historique = []
118
119 print ( " " + " = " *48 + " ")
120 print ( " BIENVENUE DANS LA CALCULATRICE " )
121 print ( " " + " = " *48 + " ")
122
123 while True :
124 afficher_menu ()
125
126 choix = input ( " \ n Votre choix (1 -8) : " ) . strip ()
127
128 if choix == " 1 " :
129 resultat , operation = o pe rat io n_ add it io n ()
130 historique . append (( resultat , operation ) )
131
132 elif choix == " 2 " :
133 resultat , operation = o p e r a t i o n _ s o u s t r a c t i o n ()
134 historique . append (( resultat , operation ) )
135
136 elif choix == " 3 " :
137 resultat , operation = o p e r a t i o n _ m u l t i p l i c a t i o n ()
138 historique . append (( resultat , operation ) )
139
140 elif choix == " 4 " :
141 resultat , operation = o pe rat io n_ div is io n ()
142 historique . append (( resultat , operation ) )
143
144 elif choix == " 5 " :
145 resultat , operation = op e ra t i on _ pu i ss a n ce ()
146 historique . append (( resultat , operation ) )
147
148 elif choix == " 6 " :
149 resultat , operation = operation_modulo ()
150 historique . append (( resultat , operation ) )
151
152 elif choix == " 7 " :
153 a ff i ch e r _h i st o ri q u e ( historique )
154
155 elif choix == " 8 " :
156 print ( " \ n " + " = " *50)
157 print ( " FIN DU PROGRAMME " )
158 print ( " = " *50)
159
160 if historique :
161 a f fi c h er _ hi s to r i qu e ( historique )
162
163 print ( " \ n Merci d ’ avoir u t i l i s la calculatrice ! " )
164 print ( " b i e n t t pour la semaine 2 ! ")
165 break
166
Cours Python - Semaine 1 12
167 else :
168 print ( f " Choix ’{ choix } ’ invalide ! (1 -8 attendu ) " )
169
170 # Pause entre les o p r a t i o n s
171 if choix not in [ " 7 " , " 8 " ]:
172 input ( " \ n Appuyez sur E n t r e pour continuer ... " )
173
174 # Point d ’ e n t r e du programme
175 if __name__ == " __main__ " :
176 main ()
Listing 7 – Calculatrice interactive complète
7 Récapitulatif et Bonnes Pratiques
7.1 Concepts Maîtrisés
Checklist de la Semaine 1
Installation de Python et configuration
Premier programme "Hello World"
Variables et types de données
Opérations mathématiques et logiques
Structures conditionnelles (if/elif/else)
Saisie utilisateur avec input()
Gestion des erreurs de base
Création d’un projet complet
7.2 Bonnes Pratiques Acquises
1. Nommage clair : age_utilisateur plutôt que a
2. Commentaires utiles : Expliquer le "pourquoi" plus que le "comment"
3. Gestion des erreurs : Valider les entrées utilisateur
4. Modularité : Utiliser des fonctions pour organiser le code
5. Tests réguliers : Vérifier chaque fonction séparément
7.3 Exercices Supplémentaires
Pour aller plus loin...
— Convertisseur de devises : EUR/USD/GBP avec taux dynamiques
— Jeu du juste prix : Deviner un nombre avec indices
— Calculateur de budget : Suivi des dépenses mensuelles
— Système de réservation : Cinéma avec places disponibles
Cours Python - Semaine 1 13
8 Préparation de la Semaine 2
8.1 Concepts à Venir
— Boucles : while et for
— Listes : Collections ordonnées de données
— Dictionnaires : Structures clé-valeur
— Fonctions : Organisation et réutilisation du code
— Projet : Application de To-Do List
8.2 Ressources Recommandées
— Documentation officielle : [Link]
— Exercices en ligne : Exercism Python Track
— Communauté : r/learnpython sur Reddit
— Tutoriels vidéo : Chaîne YouTube "Python pour les nuls"
9 Conclusion
"Le voyage de mille lieues commence par un premier pas."
— Lao Tseu
Vous avez complété avec succès la première semaine de votre apprentissage Python !
Vous disposez maintenant des bases solides pour construire des programmes fonctionnels.
La régularité dans la pratique est la clé du succès.
Objectif de la semaine prochaine
Programmer 30 minutes chaque jour pour consolider ces bases et vous préparer
aux concepts de la semaine 2.
Bonne programmation et à la semaine prochaine !