Le langage Python
Introduction
Objectif
Ce tutoriel a pour objectif de vous introduire la programmation en langage Python.
Préparation
Python est un langage interprété. Pour cette raison, un programme écrit en Python n'est pas autonome et ne fonctionne qu'en utilisant un logiciel capable de l'interpréter. Ce logiciel, ou interpréteur, lira et exécutera chaque instruction de votre programme.
Il existe plusieurs interpréteurs Python. Dans le cadre de ces travaux pratiques, il est recommandé d'utiliser Basthon. Vous êtes libres d'utiliser tout autre logiciel si celui-ci est déjà présent sur votre ordinateur.
Basthon
Basthon est un environnement de développement Python accessible sur le Web. C'est le moyen le plus simple et rapide de disposer d'un interpréteur Python. Vous devez cependant disposer d'une connexion Internet.
- Se rendre sur la page https://console.basthon.fr

- La zone de saisie de droite correspond au mode interactif (aussi appelé console).
Le principe est de saisir une instruction Python qui sera interprétée immédiatement après avoir appuyé sur entrée. - La zone de saisie de gauche correspond au mode programme Le principe est de saisir l'ensemble des instructions d'un programme et de lancer ce dernier en cliquant sur le bouton Exécuter
Premiers pas
1. Calculatrice
Pour commencer, vous allez utiliser l'interpréteur Python comme une calculatrice. Pour cela, rendez-vous sur Basthon et préparez-vous à écrire dans la console (zone de saisie de droite).
Les trois chevrons >>>, appelés invite de commandes, indiquent que l'interpréteur Python attend des instructions.
Il ne faut pas les recopier !
La console
- Saisir la valeur
2et appuyer sur entrée. - Saisir l'expression
2 + 2et appuyer sur entrée. - Saisir l'expression
2.5 + 2.5et appuyer sur entrée. - Vous devez obtenir l'affichage ci-dessous :
>>> 2
2
>>> 2 + 2
4
>>> 2.5 + 2.5
5.0
Lorsqu'on soumet une expression à l'interpréteur Python, celui-ci l'évalue et affiche sa valeur. Il attend ensuite une nouvelle instruction de la part de l'utilisateur.
Les expressions
Tester dans la console, une expression Python correspondant à chacune des descriptions suivantes :
- Une addition entre une valeur entière et une valeur décimale (aussi appelée flottant)
- Une soustraction (opérateur
-) - Une multiplication (opérateur
*) - Une division (opérateur
/) - Une puissance (opérateur
**, exemple5**2) - Une division euclidienne aussi appelée division entière (opérateur
//, voir principe ci-dessous) - Un reste de division aussi appelé modulo (opérateur
%, voir principe ci-dessous)
Les variables
Une variable est un emplacement mémoire nommé dans lequel il est possible de stocker toute valeur.
L'opération consistant à stocker une valeur au sein d'une variable s'appelle une affectation.
Celle-ci s'effectue en utilisant l'opérateur =.
👍 Exemple
>>> a = 10
>>> a
10
>>> carre = a ** 2
>>> carre
100
- Affectation de la valeur
10à la variablea - Accès à la valeur de la variable
aen écrivant simplement son nom - Affectation de la valeur de l'expression
a ** 2à la variablecarre
Ce que fait Python :a ** 2→10 ** 2→100→ Affectation de la valeur 100 à la variablecarre - Accès à la valeur de la variable
carre
Nous souhaitons calculer la moyenne de notes sur 20. Pour cela, effectuez les opérations décrites ci-dessous dans la console Python :
- Affecter à la variable
total, le résultat du calcul : - Affecter à la variable
nb_notes, le nombre de notes - Affecter à la variable
moyenne, le total divisé par le nombre de notes - Afficher le résultat en écrivant simplement le nom de la variable contenant le résultat du calcul de la moyenne
💡 Solution
>>> total = 15 + 18.5 + 12
>>> nb_notes = 3
>>> moyenne = total / nb_notes
>>> moyenne
15.166666666666666
2. Calcul de l'âge
Vous allez maintenant utiliser l'interpréteur Python en mode programme.
Pour cela, rendez-vous sur Basthon et préparez-vous à saisir du code dans l'éditeur, c'est-à-dire la zone de saisie de gauche.
Les chaînes de caractères
En programmation, la représentation d'une valeur textuelle est appelée chaîne de caractères (string en anglais).
Celle-ci se définit par du texte délimité par le caractère " (ou ').
"Ceci est une chaîne de caractères"
Copier/coller le code à trous ci-dessous dans l'éditeur :
prenom = ...
phrase = "Bonjour " + prenom + " ! Comment allez-vous ?"
print(phrase)
Compléter le code en remplaçant uniquement le ... par une chaîne de caractères de votre prénom.
💡 Solution
prenom = "Ginette"
phrase = "Bonjour " + prenom + " ! Comment allez-vous ?"
print(phrase)
- L'opérateur
+est utilisé pour assembler des chaînes de caractères. Cette opération est appelée concaténation. - La fonction
printpermet l'affichage d'une valeur dans la console.
Demande de saisie
Remplacer le code de l'éditeur par le code ci-dessous et exécutez-le :
prenom = input("Saisir votre prénom : ")
phrase = "Bonjour " + prenom + " ! Comment allez-vous ?"
print(phrase)
La fonction input permet de demander à l'utilisateur de saisir une chaîne de caractères.
La saisie s'effectue dans la console (zone de saisie de droite). Il suffit de saisir votre réponse et d'appuyer sur entrée.

Calculateur d'âge
Exécuter le code ci-dessous en remplaçant au préalable UNIQUEMENT les ... par les variables Python adéquates :
prenom = input("Saisir votre prénom : ")
annee_naissance = int(input("Votre annee de naissance : "))
age = 2023 - ...
phrase = "Bonjour " + prenom + " ! Vous avez " + str(...) + " ans."
print(phrase)
- La fonction
inputrenvoie toujours une chaîne de caractères. - La fonction
intpermet la conversion de la valeur renvoyée parinputen un nombre entier. - La fonction
strpermet la conversion d'une valeur numérique en une chaîne de caractères.
💡 Solution
prenom = input("Saisir votre prénom : ")
annee_naissance = int(input("Votre annee de naissance : "))
age = 2023 - annee_naissance
phrase = "Bonjour " + prenom + " ! Vous avez " + str(age) + " ans."
print(phrase)
3. Table de multiplication
Les boucles
Remplacer le code de l'éditeur par le code ci-dessous et exécutez-le :
print("Avant la boucle")
for n in range(10):
print("n vaut " + str(n) + " et son double vaut " + str(n*2))
print("Après la boucle")
- L'instruction
for n in range(10):est une boucle. Elle permet la répétition d'un bloc de code. - Le bloc de code correspond aux instructions << décalées >> vers la droite (on dit indentées) et situées juste en dessous de l'instruction de boucle.
- Toutes les instructions d'un même bloc doivent avoir la même indentation (utiliser la touche tab et non espace pour indenter)
- La fonction
strpermet la conversion de la valeur denen une chaîne de caractère afin de pouvoir la concaténer.
Affichage d'une table de multiplication
En utilisant une boucle, écrire le code Python permettant d'obtenir l'affichage suivant :
8 x 0 = 0
8 x 1 = 8
8 x 2 = 16
8 x 3 = 24
8 x 4 = 32
8 x 5 = 40
8 x 6 = 48
8 x 7 = 56
8 x 8 = 64
8 x 9 = 72
8 x 10 = 80
💡 Aide
Exécuter le code ci-dessous en remplaçant au préalable uniquement les ... par les expressions Python adéquates :
for i in range(...):
print("8 x " + str(...) + " = " + str(...))
Turtle
Introduction
Principe
La tortue graphique (ou Turtle) est un module d'initiation à la programmation. Son fonctionnement consiste à réaliser des dessins en déplaçant une tortue virtuelle dotée d'un stylo.
| Fonction | Description |
|---|---|
forward(n) | Avancer la tortue de n pixel |
backward(n) | Reculer la tortue de n pixel |
left(n) | Effectuer une rotation de la tortue d'un angle de n degrés vers la gauche (sens antihoraire) |
right(n) | Effectuer une rotation de la tortue d'un angle de n degrés vers la droite (sens horaire) |
goto(x, y) | Déplacer la tortue aux coordonnées (x, y) |
penup() | Lever le crayon |
pendown() | Baisser le crayon |
Vous pouvez consulter la documentation de ces fonctions et en découvrir bien d'autres sur le site officiel de Python : https://docs.python.org/fr/3/library/turtle.html
Expérimentation
- Remplacer le code de l'éditeur par le code ci-dessous et exécutez-le
- Modifier le code à votre guise pour expérimenter chacune des fonctions
import turtle
# Tracé de démonstration
turtle.forward(50)
turtle.left(90)
turtle.forward(50)
turtle.right(90)
turtle.forward(50)
turtle.penup()
turtle.goto(0, 0)
turtle.left(90)
turtle.pendown()
turtle.backward(100)
# Boucle des événements
# Nécessaire pour activer l'affichage de votre tracé
turtle.mainloop()
Figures géométriques
Écrire le code Python permettant de tracer les figures géométriques suivantes :
- Un carré
- Un triangle équilatéral
- Un pentagone
- Un carré en utilisant une boucle
- Un pentagone en utilisant une boucle
- Un polygone à n sommets