📚 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.