📚 Constructions élémentaires en Python
Les fondements de la programmation Python
🤖 Qu'est-ce qu'un programme ?
🎯 Définition Fondamentale
Un programme est une suite d'instructions élémentaires destinées à être exécutées par un ordinateur.
Langage Python
Python est un langage de haut niveau, plus proche de nous (utilisateurs) que de l'ordinateur (processeur).
Exécution Séquentielle
Les instructions sont réalisées de manière séquentielle - les unes après les autres, dans l'ordre.
🔧 Les Opérateurs
Un opérateur est un caractère ou un ensemble de caractères qui correspond à une opération pouvant être réalisée par le processeur.
💾 Instanciation
🎯 Concept d'Instanciation
L'instanciation est une instruction qui permet d'associer une valeur à une variable. Une variable en Python est une chaîne de caractères que l'on associe à un type (domaine de valeurs).
Opérateur d'Assignation
L'instanciation utilise l'opérateur =. Pour la machine, cela revient à associer un espace mémoire à la valeur désignée.
Variables et Types
Les variables peuvent contenir différents types : entiers, chaînes de caractères, tableaux, listes, nombres réels, ou objets personnalisés.
💻 Exemples d'Instanciation
# Instancier a à la valeur 42
a = 42
# Instancier ma_chaine_de_caractere à la valeur 'Hello World!'
ma_chaine_de_caractere = 'Hello World!'
💡 Base de la programmation : L'instanciation est l'opération fondamentale qui consiste à associer une valeur à une variable.
🧮 Opérations Mathématiques
🎯 Calculs en Python
Python permet de réaliser des opérations mathématiques grâce à des opérateurs qui utilisent 2 valeurs, comme nos opérations sur papier.
+
Addition
Additionne deux nombres
-
Soustraction
Soustrait le second nombre du premier
*
Multiplication
Multiplie deux nombres
/
Division
Divise le premier nombre par le second
💻 Exemples d'Opérations
a = 3 + 2 # Addition : a = 5
b = 5 - 3 # Soustraction : b = 2
c = a * b # Multiplication : c = 10
d = b / a # Division : d = 0.4
⚠️ Important : Les opérations mathématiques sont réservées aux variables de type entiers ou nombres réels. Attention aux imprécisions avec les flottants !
⚖️ Opérations de Comparaisons
🎯 Comparaisons en Python
Python permet de comparer des variables pour évaluer des relations d'ordre ou d'égalité. Attention : on ne peut comparer que des éléments du même type !
>
Supérieur
a plus grand que b
<
Inférieur
a plus petit que b
>=
Supérieur ou égal
a plus grand ou égal à b
<=
Inférieur ou égal
a plus petit ou égal à b
==
Égalité
a est égal à b
!=
Différence
a est différent de b
⚠️ Erreur fréquente : Ne pas confondre
=
(assignation) et ==
(comparaison) ! Utiliser =
dans une comparaison provoque une SyntaxError.
🚫 TypeError : Comparer des éléments de types différents génère une erreur. Exemple :
5 > "hello"
est invalide.
💬 Affichage et Demande à l'Utilisateur
Fonction print()
Affiche des informations à l'écran : chaînes de caractères, nombres, résultats de calculs. Peut concaténer plusieurs éléments séparés par des virgules.
Fonction input()
Capture les données saisies par l'utilisateur. Affiche un message d'invitation et renvoie la saisie sous forme de chaîne de caractères.
💻 Exemples d'Utilisation
# Affichage simple
print("Bonjour le monde !")
# Affichage de plusieurs éléments
print("Bonjour", "le monde", 42) # Affiche : Bonjour le monde 42
# Demande à l'utilisateur
nom = input("Quel est votre nom ? ")
print("Bonjour", nom)
# Conversion de type pour les nombres
age_str = input("Quel est votre âge ? ")
age = int(age_str) # Conversion en entier
⚠️ Important : La fonction
input()
renvoie toujours une chaîne de caractères (string). Pour traiter des nombres, il faut convertir le type avec int()
ou float()
.
🔀 Conditions
🎯 Structure Conditionnelle
Les conditions permettent d'exécuter du code selon des critères spécifiques grâce à l'instruction if. Elles évaluent des comparaisons, des états de variables ou des valeurs.
if
Exécute le code si la condition est vraie. C'est la structure de base pour les décisions.
elif
"Else if" - teste une nouvelle condition si la précédente était fausse. Peut être répété plusieurs fois.
else
Exécute le code si aucune des conditions précédentes n'était vraie. Optionnel.
💻 Exemple : Test de Majorité
# Demander à l'utilisateur son âge
age = input('Quel est votre âge ? ')
age_entier = int(age) # Conversion en entier
# Condition d'affichage
if age_entier >= 18:
print('Vous êtes majeur')
else:
print('Vous êtes mineur')
💻 Exemple : Évaluation de Notes
# Demande d'une note (A, B, C)
note = input('Quelle est la note à évaluer ? ')
if note == 'A':
print('Très bien')
elif note == 'B':
print('Un peu plus pour exceller')
elif note == 'C':
print('Peut mieux faire')
else:
print('Poursuis tes efforts')
💡 Astuce : Le bloc
else
est optionnel. Si aucune action n'est nécessaire quand toutes les conditions sont fausses, vous pouvez l'omettre.
⚠️ Performance : Les conditions sont évaluées dans l'ordre. Placez les conditions les plus probables en premier pour optimiser les performances.
🔄 Boucles
🎯 Répétition de Code
Les boucles permettent de répéter un bloc de code plusieurs fois. Python propose deux types principaux : for (nombre d'itérations défini) et while (condition de continuation).
Boucle for
Répète un code un nombre défini de fois. Idéale quand on connaît le nombre d'itérations à l'avance.
Boucle while
Répète un code tant qu'une condition reste vraie. Utilisée quand le nombre d'itérations est inconnu.
range()
Fonction qui génère une séquence de nombres. Essentielle pour les boucles for avec compteur.
💻 Boucle for : Affichage de 1 à n
n = 30
for i in range(1, n+1):
print(i)
# Variantes de range() :
# range(10) → 0, 1, 2, ..., 9
# range(1, 10) → 1, 2, 3, ..., 9
# range(1, 10, 2) → 1, 3, 5, 7, 9
💻 Boucle while : Même résultat
n = 30
i = 1
# On veut afficher les nombres de 1 à n
while i <= n:
print(i)
i = i + 1 # Incrémentation obligatoire !
⚠️ Danger : Attention aux boucles infinies ! Dans une boucle
while
, oublier d'incrémenter la variable de contrôle peut créer une boucle qui ne s'arrête jamais.
💡 Avantage : La boucle
for
s'arrête forcément car elle itère sur un nombre défini d'éléments. Utilisez for
quand vous connaissez le nombre d'itérations, while
pour les conditions dynamiques.