Tutoriel d’utilisation de Python
Introduction
Python est un langage interprété portable, dynamique, extensible et gratuit. Lorsque la programmation a
fait son apparition au collège, l’outil Scratch s’est beaucoup développé car il permet d’avoir une
approche visuelle de la programmation en utilisant des blocs.
Au lycée, le langage Python s’est très largement répandu car il est facilement accessible, notamment
grâce à une syntaxe simple. De plus, les nombreux modules qu’il propose permettent d’écrire des
programmes très complexes.
Sauvegarder votre code
a) Sélectionner entièrement votre code dans la console et le copier.
b) Ouvrir un éditeur de texte (Bloc-notes, Sublime text, etc.) et coller le code.
c) Enregistrer le travail en le nommant par exemple code.py (l'extension .py est obligatoire pour
l’enregistrer en tant que fichier Python).
Petite aide
Pour les utilisateurs de Scratch, il existe une petite application en ligne - Pyblock - qui permet d’écrire
un programme en utilisant les blocs (avec moins d’options qu’avec Scratch) et l’application se charge
d’écrire le code Python dans un autre onglet. Le code est ensuite compilable :
http://mathematiques-medias.discipline.ac-lille.fr/PyBlock/
Rappel du programme 2018 avec exemples
Variable et instructions élémentaires :
- choisir ou déterminer le type d’une variable (entier, flottant ou chaîne de caractères) ;
- concevoir et écrire des affectations à des variables ;
- écrire une formule permettant un calcul combinant des variables.
Python ne demande pas nécessairement de définir le type des variables utilisées mais cela est possible,
par exemple, lors d’une demande de saisie pour l’utilisateur. Une bonne pratique est de nommer les
variables en fonction de ce qu’elles représentent et pas simplement en utilisant des lettres. De plus, les
noms de variables sont sensibles à la casse (majuscule, minuscule).
Le programme suivant qui nous sert d’exemple permet de calculer l’aire d’un rectangle en spécifiant sa
longueur et sa largeur. La fonction p rint permet d’afficher la valeur finale de l’Aire.
Code 1 sans déterminer le type des variables Code 2 en explicitant le type des variables
Les trois premières lignes sont des affectations de Les deux premières lignes vont permettre de
variables. La 3e ligne est l’écriture d’une formule demander à l’utilisateur de saisir des valeurs au
permettant un calcul combinant des variables. lancement du programme. Ces valeurs sont
nécessairement des entiers (int). Pour avoir des
nombres décimaux, on écrira float.
On notera l’importance des guillemets pour écrire
du texte dans l’instruction input.
Boucle et itérateur, instruction conditionnelle :
- programmer une instruction conditionnelle ;
- programmer une boucle bornée ;
- programmer une boucle non bornée.
Le premier point concerne les conditions “Si <...> alors <...> sinon <...>” ; le point suivant aborde les
boucles bornées “Pour <var> allant de <a> à <b> faire <...>” et le dernier point traite des boucles non
bornées “Tant que <condition> faire <...>”.
Instruction Exemple : On place deux points
conditionnelle : sur la droite numérique réelle.
Connaissant leur abscisse, on
cherche à connaître la distance
entre ces deux points.
Attention : les deux-points à la fin de la ligne de l’instruction if et de la ligne de l’instruction else sont
obligatoires ainsi que les indentations effectuées, soit automatiquement lors du retour à la ligne, soit à
partir de la barre espace ou de la touche tab. Il n’y a pas de bonne ou de mauvaise méthode, l’important
est de choisir une syntaxe et de s’y tenir. En revanche, les lignes laissées vides ne sont pas obligatoires
mais permettent de gagner en lisibilité.
Boucle bornée : Exemple : La suite est définie
pour tout entier naturel par
.
On souhaite calculer les 5 premiers
termes puis les termes à .
Le symbole # permet d’insérer des
commentaires qui n’influencent
pas le code.
Attention : une fois encore, les deux-points à la fin de la ligne de l’instruction for sont obligatoires.
L’instruction range(n) donne les premiers entiers donc l’intervalle d’entiers entre et .
L’instruction range(a, b) donne les premiers entiers suivant en commençant par .
Ainsi l’instruction range(12, 17) donne les 5 entiers suivants : 12 ; 13 ; 14 ; 15 et 16.
Multiple de 3 entre 15 et 28 : Décompte de 4 en 4 en partant de 19 :
L’instruction range(a, b, c) permet d’aller de vers en suivant un pas de (où peut être négatif).
Boucle non Exemple : La suite est
bornée : définie pour tout entier naturel
par .
On souhaite connaître le premier
terme à partir duquel est
supérieur ou égal à 100 et son
rang.
On remarque ici que les nombres et ont dû être initialisés à leur valeur de départ. On pensera aux
deux-points à la fin de la ligne de l’instruction while.
En bonus, une utilisation de la commande print qui mélange à la fois du texte et l’affichage de valeur de
variables.
Notion de fonction :
- programmer des fonctions simples, ayant un petit nombre d’arguments.
Reprenons notre exemple de calcul d’aire d’un rectangle mais écrivons cette fois notre programme avec
une fonction :
On définit ici une fonction prenant deux arguments. Le corps du programme va travailler sur ces
variables et, parce qu’on l’a codé ainsi, nous affichera la valeur calculée (ici, on a appliqué la fonction
deux fois donc deux valeurs sont affichées).
Quelques exemples
Remarque : pour certains exemples, on a dû importer la librairie math pour pouvoir effectuer certains calculs
(racine carrée, puissance, exponentielle, etc.).
Racine d’un trinôme de la forme en traitant tous les cas possibles (on admettra
cependant qu’il s’agit bien d’un trinôme et donc ).
Python en utilisant une
saisie (input) de la part de
l’utilisateur
Python en utilisant une
fonction
Calculer le périmètre d’un triangle dont les longueurs des côtés sont entières
Pyblock
Python en utilisant une
saisie (input) de la part de
l’utilisateur
Python en utilisant une
fonction
Exemple avec un algorithme :
BAC S 2017
Algorithme ancienne
version
Remarque : la valeur de est ici affichée en fin d’algorithme.
Algorithme nouvelle
version (2018)
Remarque : dans ce cas, la valeur de n’est pas affichée en fin
d’algorithme.
Pyblock
Remarque : nouvelle version : le programme n’affiche pas la valeur de
même si celle-ci est sauvegardée.
Python
Remarque : le print(Lambda) permet d’afficher la valeur de comme dans
l’algorithme ancienne version.