Python
Le sommaire
![]() |
Algorithmes |
![]() |
Introduction I. Les variables. II. Les instructions conditionnelles. III. Les boucles bornées. IV. Les boucles non bornées. V. Les fonctions. VI. Les modules ou bibliothèques |
introdution au langage python
Définition :
|
Un algorithme est une suite d'instructions détaillées qui, si elles sont correctement exécutées, conduit à un résultat donné.
Exemples :
♦ Une recette de cuisine, une notice de montage peuvent être considérées comme des algorithmes.
♦ La suite d’instructions suivantes :
1. Choisir un nombre entier
2. Le multiplier par lui-même 3. Énoncer le résultat obtenu |
est un algorithme permettant d'obtenir le carré d'un nombre entier. |
Les instructions doivent être formulées dans un langage compréhensible par l'exécutant.
♦ Dans le cas d'un humain, il s'agira du langage courant (langue maternelle)
♦ Dans le cas d'une machine, il faudra recourir à un langage de programmation.
Le langage de programmation que nous allons étudier cette année est le langage Python : |
![]() |
|
# Politesse
Copie - colle le script dans l'éditeur pour l'exécuter... |
En python, le symbole "#" permet d'afficher des commentaires dans le programme qui ne seront pas interprétés par python.
variables
Définition :
|
Un algorithme (ou un programme informatique), agit sur des nombres, des textes, ...
Ces différents éléments sont stockés dans des variables.
On peut se représenter une variable comme une boîte portant une étiquette ("le nom de la variable") à l'intérieur de laquelle on peut placer un contenu :
|
La variable x contient le nombre 3. |
En informatique, les variables sont des emplacements réservés dans la mémoire de l'ordinateur auxquels on attribue une étiquette.
♦ Affectation de variables.
Définition :
|
Affecter une variable, c'est attribuer une valeur à cette variable.
Si la variable contenait déjà une valeur, cette ancienne valeur est effacée.
Affecter une variable revient à "remplir la boîte" : |
![]() |
Langage naturel | ![]() |
x $\leftarrow$ 3 | x = 3 |
|
a=2
b=5
c=a+b
|
Copie - colle le script dans l'éditeur pour l'exécuter et teste différentes valeurs de a et de b.
♦ Types de variables.
En python, une variable peut être de différents types :
Type | entier | flottant | chaîne de caractère | booléen |
Exemple | 3 | 3.2 | "bonjour !" | Vrai |
![]() |
int() |
float() |
str() |
|
|
a=2 b="bonjour" c=3>5 Copie - colle le script dans l'éditeur pour l'exécuter... |
Instructions conditionnelles if: ...
Définition :
|
Un test conditionnel est une instruction qui permet d'effectuer des traitements différents selon qu'une condition est vérifiée ou non.
Plusieurs symboles de comparaison entre deux nombres sont utilisés en python :
Langage naturel | égal à | différent de | strictement supérieur | strictement inférieur | supérieur ou égal | inférieur ou égal |
![]() |
== |
!= |
> |
< |
>= |
<= |
♦ Structure if : ....
Langage naturel | ![]() |
si condition alors instructions 1 |
if condition : instructions 1 |
|
a=2
b=5
if b>a :
|
Copie - colle le script dans l'éditeur pour l'exécuter et teste différentes valeurs de a et de b.
Remarques :
♦ Les ":
" en fin de ligne du if
sont obligatoires.
♦ Ne pas oublier l'indentation (décalage) des blocs d'instruction
|
a=21
b=15
if b>a :
|
Copie - colle le script dans l'éditeur pour l'exécuter....
Instructions conditionnelles if : .. else : ...
♦ Structure if : .... else : ....
Langage naturel | ![]() |
si condition alors instructions 1 sinon instructions 2 |
if condition : instructions 1else : instructions 2 |
Remarques :
♦ Les ":
" en fin de ligne du if
et else
sont obligatoires.
♦ if
et else
doivent être alignés.
♦ Ne pas oublier l'indentation (décalage) des blocs d'instruction
|
a=3 if a+12==45 : |
Copie - colle le script dans l'éditeur pour l'exécuter et teste différentes valeurs de a.
|
a=2 b=5 if b>a : |
Copie - colle le script dans l'éditeur pour l'exécuter et teste différentes valeurs de a et de b.
Instructions conditionnelles if:... elif:....else:
♦ Structure if : .... elif:.....else : ....
Langage naturel | ![]() |
si condition 1 alors |
|
Remarques :
♦ Les ":
" en fin de ligne du if
, elif
et else
sont obligatoires
♦ Ne pas oublier l'indentation (décalage) des blocs d'instruction
♦ elif
et else
sont optionnels et s'ils sont présents doivent être alignés avec if
.
|
a=2 b=5 if a>b : |
Copie - colle le script dans l'éditeur pour l'exécuter et teste différentes valeurs de a et de b.
Les boucles bornées.
Définition :
|
Une boucle permet de répéter un traitement un certain nombre de fois.
Une boucle bornée répète le traitement un nombre de fois déterminé à l’avance.
Langage naturel | ![]() |
Pour i allant de à 0 à 9 : instructions |
for i in range(10): instructions |
Remarques :
♦ Les ":
" en fin de ligne du for...in range()...
sont obligatoires
♦ Ne pas oublier l'indentation (décalage) des blocs d'instruction
|
|
Copie - colle le script dans l'éditeur pour l'exécuter et teste des valeurs de a.
Utilisation de l'instruction range():
Langage naturel | i allant de 0 à 4 | i allant de 1 à 10 | i allant de 2 à 10 de 2 en 2 |
![]() |
i in range(5) |
i in range (1,11) |
i in range(2,11,2) |
On peut noter le décalage entre les attributs de range()
et les nombres concernés.
|
|
Copie - colle le script dans l'éditeur pour l'exécuter et teste des valeurs de a et b.
Défi Python :
|
Faire un algorithme qui affiche tous les nombres pairs compris entre 95 et 131 .... |
Les boucles non bornées.
Définition :
|
Une boucle permet de répéter un traitement un certain nombre de fois.
Une boucle non bornée répète le traitement jusqu'à ce qu'une condition soit vérifiée. On parle aussi de boucle conditionnelle.
Langage naturel | ![]() |
Tant que condition faire : instructions |
while condition : instructions |
Remarques :
♦ Les ":
" en fin de ligne du while
sont obligatoires
♦ Ne pas oublier l'indentation (décalage) des blocs d'instruction
|
|
Copie - colle le script dans l'éditeur pour l'exécuter et teste des valeurs de a.
Défi Python :
|
Faire un algorithme qui affiche tous les puissances de 2 plus petites que 100 .... |
♦ Utilisation de plusieurs conditions.
Langage naturel | et | ou |
![]() |
and |
or |
|
|
Copie - colle le script dans l'éditeur pour l'exécuter.....
Défi Python :
|
Faire un algorithme qui affiche tous les multiples de 3 compris entre 200 et 300. |
fonctions
Définition :
|
Une fonction est une suite d'instructions qui s'effectue lorsqu'on l'appelle.
![]() |
|
|
def mafonction(): print("bonjour de ma fonction") |
Copie - colle le script dans l'éditeur puis écris mafonction()
dans la console...
Intérêts des fonctions :
Le programme est structuré et plus lisible.
Elles permettent aussi de décomposer un programme en sous-programmes.
Remarques :
♦ Les ":
" en fin de ligne du def
sont obligatoires, les "()
" sont obligatoires.
♦ Ne pas oublier l'indentation (décalage) des blocs d'instruction
♦ Il faut définir les fonctions avant le programme principal
♦ Pour appeler une fonction dans le programme, il suffit de saisir le nom de la fonction.
♦ Attributs d'une fonction.
Définition :
|
On peut affecter des informations à une fonction en utilisant des attributs.
![]() |
|
Remarques :
♦ Une fonction peut avoir un nombre quelconque d'attributs, ou aucun, mais les "()
" sont obligatoires
♦ Pour appeler les fonctions dans le programme, il suffit de saisir le nom de la fonction avec ses attributs entre parenthèses.
|
|
Copier et coller le script python suivant dans l'éditeur python. Le tester en saisissant majeur(a)
dans la console python, pour plusieurs valeurs de a.
Défi Python :
|
Faire un algorithme d'une fonction qui compare deux nombres a et b. |
bibliothèques
Les fonctions de référence tout comme le nombre $\pi$ (pi
) ne sont pas inclus par défaut dans python.
Les bibliothèques ou modules qui incluent ces fonctions doivent être appelées en début de programme pour être utilisées.
Pour importer une fonction d'un module, on tape en début de programme :
from
nom_module import
nom_fonction
Pour tout importer, on saisit :
from
nom_module import
*
Les principaux modules utilisés en mathématiques sont :
math
: contient les principales fonctions mathématiques
turtle
: Tortue de python
random
: fonctions aléatoires
matplotlib
: représentation graphique et statistiques