Aller au contenu
Drones

Premiers Pas avec Python

Premiers Pas avec Python

🎯 Objectif du chapitre : À la fin de ce chapitre, tu auras installé Python sur ta machine, tu sauras écrire et exécuter un programme simple, et tu maîtriseras les briques de base (variables, affichage, attente, modules) qui te serviront pour piloter ton drone au chapitre suivant.

🗺️ Ce qu'on va apprendre aujourd'hui

Leçon Titre Tu sauras faire...
1 Installer Python et Thonny Mettre Python en place sur ton PC
2 Mon premier programme Afficher du texte, exécuter du code
3 Les variables Stocker et réutiliser des valeurs
4 Parler à l'utilisateur Demander une info et y répondre
5 Attendre et importer Mettre des pauses, utiliser des modules

Temps estimé : 45 min à 1h de pratique

🧠 Avant de Commencer : Python, c'est quoi ?

Tu as déjà programmé avec Scratch (blocs colorés à empiler), avec Processing (du code pour dessiner), avec les briques EV3 (programmation visuelle pour le robot). Toutes ces interfaces, c'était de la programmation. Python aussi.

La différence ? Python s'écrit en texte. Pas de blocs à glisser : tu tapes des instructions ligne par ligne, et l'ordinateur les exécute dans l'ordre.

Pourquoi Python ?

🌍 Dans le monde réel 🤖 Dans ce cours
C'est le langage le plus utilisé en data science et IA On va l'utiliser pour piloter le drone Tello
Il sert chez Google, Netflix, la NASA, l'ESA... Sa syntaxe est lisible — proche du français en pseudocode
Il est gratuit, multi-plateforme, et a une énorme communauté Tu peux installer plein de modules pour faire plein de choses

Bridge avec Scratch

Tout ce que tu as vu en Scratch existe aussi en Python. C'est juste écrit différemment.

En Scratch En Python
🟦 Bloc dire "Bonjour" print("Bonjour")
🟧 Bloc attendre 1 seconde time.sleep(1)
🟪 Bloc variable = 10 variable = 10
🟨 Bloc si... alors... if ... :
🟩 Bloc répéter 4 fois for i in range(4):

Tu connais déjà les concepts. Reste à apprendre la manière d'écrire en Python.

📍 Leçon 1 : Installer Python et Thonny

Pour écrire du code Python, on a besoin de deux choses :

  1. Python lui-même — c'est le moteur qui va lire et exécuter ton code
  2. Un éditeur de code — c'est le logiciel dans lequel tu vas taper ton programme

On va utiliser Thonny, un éditeur fait spécialement pour les débutants Python. Il est léger, gratuit, et il intègre déjà tout ce qu'il faut.

Étape 1 : Installer Python

  1. Va sur python.org/downloads
  2. Clique sur le gros bouton jaune "Download Python 3.x"
  3. Lance l'installateur
  4. Clique sur Install Now et attends que ça finisse

💡 Astuce : sur Windows, l'installateur récent fait tout seul ce qu'il faut (notamment l'ajout au PATH). Si jamais une commande Python ne fonctionne pas plus tard depuis un terminal, désinstalle puis réinstalle en cochant l'option "Add Python to PATH" sur l'écran principal de l'installateur.

Étape 2 : Installer Thonny

  1. Va sur thonny.org
  2. Télécharge la version pour ton système (Windows, Mac ou Linux)
  3. Installe normalement, "Suivant suivant suivant"

Étape 3 : Vérifier que ça marche

  1. Lance Thonny
  2. Tu vois deux zones :
    • En haut, l'éditeur (zone blanche où tu vas taper ton code)
    • En bas, la console (zone où s'affichent les résultats)
  3. Dans la console, après les >>>, tape : 1 + 1 puis appuie sur Entrée
  4. Si tu vois 2 s'afficher, c'est gagné ! 🎉

⚠️ Que faire si...

Le problème La solution
python n'est pas reconnu dans le terminal Tu as oublié de cocher "Add Python to PATH". Désinstalle et réinstalle.
Thonny refuse de s'ouvrir Vérifie que tu as bien installé Python AVANT Thonny
La console affiche un message bizarre Note-le et lève la main, on regarde ensemble

📍 Leçon 2 : Mon Premier Programme

Bon. Python est installé. Thonny tourne. Maintenant on code.

Hello, world!

Toute la communauté des programmeurs partage une tradition : le premier programme qu'on écrit dans un nouveau langage affiche le mot "Hello, world!". C'est un rite de passage.

Dans l'éditeur Thonny (la zone du haut), tape exactement ceci :

print("Hello, world!")

Puis appuie sur le bouton ▶ Exécuter (ou la touche F5).

Thonny va te demander d'enregistrer le fichier. Donne-lui un nom (ex: hello.py) et un dossier. L'extension .py veut dire "fichier Python".

Tu devrais voir ceci s'afficher dans la console :

Hello, world!

🎉 Tu viens d'exécuter ton premier programme Python.

Qu'est-ce qu'on vient de faire ?

Décortiquons cette ligne minuscule mais riche en concepts :

print("Hello, world!")
Élément Ce que c'est
print Le nom d'une fonction intégrée à Python. Elle affiche du texte.
( et ) Les parenthèses indiquent ce qu'on donne à la fonction (ses "ingrédients").
"Hello, world!" Un texte (on dit aussi une "chaîne de caractères" ou "string"). Les guillemets indiquent que c'est du texte.

💡 Analogie : print est comme une machine à café. Tu lui donnes un ingrédient (le texte), tu appuies sur le bouton (▶), elle te sort un résultat (le texte affiché).

✏️ Mini-exercice 🥉 Bronze

Modifie ton programme pour qu'il affiche :

Bonjour !
Je m'appelle Python.
J'ai très envie de piloter un drone.

💡 Indice : Une ligne print(...) n'affiche qu'une seule ligne de texte. Combien de print te faut-il ?

📍 Leçon 3 : Les Variables

Imagine que tu doives afficher ton prénom 10 fois dans ton programme. Tu pourrais écrire :

print("Bonjour Thibault")
print("Salut Thibault")
print("Coucou Thibault")
# ... encore 7 fois

Mais si tu changes de prénom ? Tu dois tout réécrire. Et si tu te trompes une fois, ton programme devient incohérent.

Solution : on stocke ton prénom dans une variable.

Une variable, c'est quoi ?

C'est une boîte avec une étiquette. Tu mets quelque chose dedans, tu donnes un nom à la boîte, et après tu peux y faire référence par ce nom.

prenom = "Thibault"

print("Bonjour")
print(prenom)
print("Comment vas-tu ?")

Exécute. Tu obtiens :

Bonjour
Thibault
Comment vas-tu ?

Maintenant change la première ligne en prenom = "Marie" et relance. Le programme entier s'adapte sans rien d'autre à modifier. C'est ça, le pouvoir des variables.

Les règles de nommage

Quelques règles pour nommer une variable en Python :

✅ Autorisé ❌ Interdit
prenom prénom (pas d'accents)
prenom_user prenom user (pas d'espace)
prenom2 2prenom (pas commencer par un chiffre)
MaVariable if, print, for... (mots réservés Python)

💡 Convention : en Python, on écrit les noms de variables en minuscules avec des underscores : ma_variable, prix_total, nombre_de_drones. Lisible et conforme aux usages.

Les types de valeurs

Une variable peut contenir différentes sortes de choses :

prenom = "Thibault"          # un texte (string)
age = 35                     # un nombre entier (integer)
hauteur_drone = 1.50         # un nombre à virgule (float)
est_majeur = True            # un booléen (True ou False)

⚠️ Attention aux guillemets : les textes sont entre "...", les nombres NON.

nombre = 10        # un vrai nombre, on peut faire des maths avec
nombre = "10"      # un TEXTE qui ressemble à un nombre — on ne peut PAS faire de maths avec

Faire des calculs

Tu peux utiliser les variables comme dans une calculatrice :

prix_drone = 120
nombre = 8
total = prix_drone * nombre
print(total)

Résultat :

960
Opérateur Effet Exemple
+ Addition 5 + 38
- Soustraction 5 - 32
* Multiplication 5 * 315
/ Division 10 / 33.333...
// Division entière 10 // 33
% Reste de la division 10 % 31

✏️ Mini-exercice 🥈 Argent

Écris un programme qui calcule le prix total de ta commande de matériel pour la classe :

  • 8 drones Tello à 120€
  • 8 batteries supplémentaires à 25€
  • 4 hubs de chargement à 35€

Le programme doit afficher le total. Utilise des variables avec des noms parlants.

📍 Leçon 4 : Parler à l'Utilisateur

Pour l'instant, tes programmes affichent toujours la même chose. C'est statique. Pour les rendre interactifs, on va apprendre à demander des informations à l'utilisateur.

La fonction input()

prenom = input("Comment tu t'appelles ? ")
print("Salut", prenom, "!")

Quand tu exécutes :

Comment tu t'appelles ? 

Le programme attend que tu tapes une réponse. Tape ton prénom, appuie sur Entrée :

Comment tu t'appelles ? Thibault
Salut Thibault !

Comment ça marche ?

  • input("...") affiche le texte entre guillemets, puis attend la réponse de l'utilisateur
  • Ce que l'utilisateur tape est stocké dans la variable à gauche du =
  • Ce qu'on stocke est toujours du texte (un string)

⚠️ Le piège des nombres

Si tu fais ça :

nombre = input("Donne-moi un nombre : ")
double = nombre * 2
print(double)

Et que tu tapes 5, tu obtiens... 55. Quoi ?!

Explication : pour Python, ce que tu as tapé est le texte "5", pas le nombre 5. Multiplier un texte par 2, ça le répète deux fois ("5" * 2 = "55").

Pour avoir un vrai nombre, il faut convertir :

nombre = int(input("Donne-moi un nombre : "))
double = nombre * 2
print(double)

int(...) veut dire "convertis ceci en integer (nombre entier)". Maintenant si tu tapes 5, tu obtiens 10. ✅

Fonction Convertit en...
int(x) Nombre entier
float(x) Nombre à virgule
str(x) Texte

✏️ Mini-exercice 🥈 Argent

Écris un programme qui :

  1. Demande son prénom à l'utilisateur
  2. Demande son année de naissance
  3. Calcule son âge approximatif (année actuelle - année de naissance)
  4. Affiche : "Bonjour [prénom], tu as environ [âge] ans."

💡 Indice 1 : tu auras besoin de int(...) quelque part.

💡 Indice 2 — la question délicate : comment ton programme va-t-il connaître l'année actuelle ?

Deux approches s'offrent à toi :

  • Solution facile mais moche : écris dans ton code annee_actuelle = 2026. Ça marche... jusqu'au 1er janvier prochain où ton programme sera faux ! Il faudra le modifier chaque année.

  • Solution élégante : Python a un module qui s'occupe des dates. Tu en connais déjà un dans la même famille — celui qu'on a importé pour sleep au-dessus. Cherche datetime (= "date et heure") et essaie de trouver comment récupérer l'année courante. Si tu sèches, Google "python current year" et la première réponse te dépannera. La solution tient en 2 lignes.

Indice gratuit pour t'orienter : il y a un objet datetime.date.today() qui te donne la date d'aujourd'hui, et tu peux accéder à son année avec un attribut nommé... bah devine.

📍 Leçon 5 : Attendre, et Utiliser des Modules

Deux concepts qu'on va beaucoup utiliser pour le drone : mettre des pauses dans le code et importer des outils que d'autres ont écrits.

Mettre une pause

En Scratch, tu avais le bloc 🟧 attendre 1 seconde. En Python, c'est la fonction sleep du module time.

import time

print("3...")
time.sleep(1)
print("2...")
time.sleep(1)
print("1...")
time.sleep(1)
print("Décollage ! 🚀")

Exécute. Tu vois bien la pause d'une seconde entre chaque ligne.

C'est quoi, un module ?

Python tout seul, c'est une boîte à outils de base. Mais beaucoup de gens ont écrit des outils supplémentaires rangés dans des modules. Quand tu écris :

import time

Tu dis à Python : "emprunte-moi la boîte à outils time, j'en ai besoin".

💡 Analogie : Python sans modules = une trousse de base (stylos, crayons, gomme). Importer un module = ouvrir un tiroir spécialisé (la trousse de géométrie, la trousse de chimie...).

Une fois importé, tu accèdes aux outils du module avec nom_du_module.nom_de_l_outil :

Code Ce que ça fait
time.sleep(2) Attendre 2 secondes
time.sleep(0.5) Attendre 0,5 seconde (une demi-seconde)
time.sleep(0.1) Attendre 0,1 seconde

Préviewing : un module qu'on va beaucoup utiliser

Au chapitre suivant, on importera le module djitellopy pour piloter le drone :

from djitellopy import Tello

drone = Tello()
drone.connect()
drone.takeoff()

Tu ne comprends pas encore tout, c'est normal. On verra ça en détail. Mais déjà tu reconnais : un import, puis on utilise les outils du module. C'est exactement le même principe que time.sleep.

✏️ Mini-exercice 🥇 Or

Écris un programme compte à rebours décollage drone qui :

  1. Demande à l'utilisateur le prénom du pilote
  2. Affiche "Bienvenue [prénom], préparation au décollage."
  3. Attend 2 secondes
  4. Affiche "5...", attend 1 seconde, puis "4...", etc. jusqu'à "1..."
  5. Affiche "🚀 Décollage !"

💡 Astuce : tu peux soit écrire 5 fois print + sleep, soit (si tu te sens téméraire) chercher comment faire une boucle. On verra les boucles au chapitre suivant — pas obligé de plonger maintenant.

✏️ Mini-exercice 💎 Diamant

Reprends le programme précédent et améliore-le :

  1. Demande à l'utilisateur le nombre de secondes du compte à rebours
  2. Le programme s'adapte (compte_a_rebours = int(input(...)))
  3. Bonus : si l'utilisateur tape 0 ou un nombre négatif, affiche directement "Décollage immédiat !"

💡 Indice : on n'a pas encore vu les conditions if/else. Si tu veux tenter, cherche par toi-même ou demande au prof — on verra ça au chapitre suivant en détail.

🎯 Auto-évaluation

Niveau J'ai réussi à...
🥉 Bronze Installer Python + Thonny, et afficher du texte avec print
🥈 Argent Utiliser des variables, faire des calculs, lire l'input utilisateur
🥇 Or Faire un compte à rebours avec time.sleep et un module importé
💎 Diamant Adapter le compte à rebours en fonction de l'input utilisateur

📚 Vocabulaire à Retenir

Terme Définition
Python Langage de programmation texte, célèbre pour sa simplicité et sa polyvalence
Thonny Éditeur de code spécialement conçu pour les débutants Python
.py Extension des fichiers Python
Console Zone où le programme affiche ses résultats
print() Fonction qui affiche du texte
input() Fonction qui demande une saisie à l'utilisateur
Variable Boîte étiquetée qui stocke une valeur réutilisable
String / chaîne Du texte, écrit entre guillemets "..."
Integer / int Nombre entier sans virgule
Float Nombre à virgule
Module Boîte à outils Python à importer pour bénéficier de ses fonctions
import Mot-clé qui charge un module
time.sleep(n) Met le programme en pause pendant n secondes
datetime Module Python qui gère les dates et les heures

🚀 Pour Aller Plus Loin

Si tu as fini avant les autres :

  • Calculatrice perso : programme qui demande deux nombres et une opération (+, -, *, /), et affiche le résultat
  • Convertisseur : programme qui convertit des euros en dollars (ou inversement) selon un taux que l'utilisateur saisit
  • Mad Libs : programme qui demande des mots (un nom, un adjectif, un verbe...) et construit une histoire farfelue en les utilisant dans un texte
  • Compteur d'anniversaire (plus avancé, voir indices ci-dessous) : combien de jours avant ton prochain anniversaire ?
  • Site Python officiel : docs.python.org/fr/3/tutorial/ — le tutoriel officiel, en français

💡 Indices pour le "Compteur d'anniversaire"

L'idée est simple à formuler :

  1. Demande à l'utilisateur le jour et le mois de sa date de naissance (jour 1-31, mois 1-12)
  2. Récupère la date d'aujourd'hui (tu as déjà vu comment dans l'exo précédent)
  3. Calcule combien de jours séparent aujourd'hui du prochain anniversaire
  4. Affiche le résultat

C'est plus subtil que ça en a l'air. Voici les pistes :

  • Le module datetime peut créer une vraie date comme ceci : datetime.date(2026, 11, 15) représente le 15 novembre 2026
  • Tu peux soustraire deux dates entre elles. Le résultat est un objet appelé timedelta qui a un attribut .days (= nombre de jours d'écart)
  • Attention au cas piégeant : si la personne est née le 15 mars et qu'on est le 20 mars, son prochain anniversaire est-il en 2026 ou en 2027 ? Ton programme doit gérer ça avec une condition (if). Tu n'as pas encore vu les if mais tu peux deviner — ou laisser ça pour le prochain chapitre où on les voit en détail.

Tu n'auras pas la solution toute mâchée : à toi d'expérimenter, de chercher dans la doc, et de demander de l'aide si tu coinces. C'est comme ça qu'on apprend vraiment à programmer.