P1 - Les Bases Du Python
P1 - Les Bases Du Python
I – Point d’histoire
A la fin des années 1980, Guido Van Rossum travaille aux Pays-Bas au CWI (Centrum voor Wiskunde
en Informatica) dans l’équipe du système d’exploitation Amoeba. A l’époque, ce système posait des
problèmes d’interface avec l’utilisateur. C’est pourquoi en 1989 Van Rossum crée, sur son temps libre,
la première version du langage Python, qui sera rapidement adopté par son équipe. La première
version rendue publique, la 0.9.0, est diffusée en 1991. Le Python s’inspire lui-même d’autres
langages, selon la généalogie suivante :
Pascal (1971)
Algol (1958) Modula (1977)
ABC Python (1991)
C (1972)
II – Variables et affectations
1) Définition
En informatique, on appelle variable tout emplacement de la mémoire dans lequel peuvent être
stockées des informations qui pourront changer au fil du temps.
● Le nom d'une variable est un nom explicite, composé d’une séquence de lettres (de a à z, de A
à Z), et de chiffres (de 0 à 9), mais il doit toujours commencer par une lettre (jamais par un
chiffre).
Exemples :
● Seules les lettres ordinaires sont autorisées. Les lettres accentuées, les cédilles, les espaces,
les caractères spéciaux tels que $, #, @, etc. sont interdits, à l'exception du caractère _
(underscore) qui remplace en général les espaces.
(Le tiret (-) est bien sûr interdit puisqu'il correspond aussi à la soustraction.)
● La casse est significative : Cout, cout et COUT sont des variables différentes !
Cas d’erreurs :
● Enfin Python compte 35 mots réservés qui ne peuvent pas non plus être utilisés comme noms
de variable (ils sont utilisés par le langage lui-même) :
NB : Les noms commençant par une majuscule ne sont pas interdits, mais l'usage veut qu'on le réserve
plutôt aux variables qui désignent des classes (le concept de classe sera abordé plus tard).
• En Python, on peut assigner une valeur à plusieurs variables et on peut faire des affectations
parallèles.
Exemples :
Attention :
3) Types de base
Dans la machine, l’information étant binaire, le type des variables permet de la traduire en utilisant le
bon « décodeur ». Une variable est typée, c’est-à-dire que l’étiquette de la variable indique ce que
contient cette boite virtuelle.
http://flot.sillages.info
III – Instructions élémentaires
a. Saisie
En Python, l’entrée des valeurs par l’utilisateur est possible. Le programme commence par afficher une
phrase à destination de l’utilisateur pour qu’il entre la donnée demandée dans la zone de saisie et que
le script continue son exécution.
La fonction input( ) demande une saisie au clavier et affiche à l’écran ce qui est éventuellement inséré
entre apostrophes ou guillemets.
La fonction int() est utilisée pour saisir un nombre entier.
La fonction float() est utilisée pour saisir un nombre décimal.
La fonction eval() est utilisée pour saisir une formule.
b. Affichage
Dans un programme, il est parfois intéressant d’afficher sur l’écran de l’ordinateur des résultats ou
des phrases réponses.
La fonction print() permet l’affichage du contenu entre parenthèses dans la console Python.
2) Opérateurs arithmétiques : + ; - ; * ; ** ; / ; // ; %
- Soustraction >>> 7 - 5 2
* Multiplication >>> 7 * 5 35
** Exponentiation >>> 4 ** 3 64
Ces opérateurs peuvent être utilisés avec tous les opérateurs arithmétiques. Deux exemples :
Exemple :
IV – Instructions conditionnelles
a. Définition
Une condition est une expression qui peut prendre l’une des deux valeurs suivantes : vrai ou faux.
C’est une valeur de type « logique » ou « booléen ». Une condition permet d’exécuter une ou
plusieurs instructions dans un cas (une expression), d’autres instructions dans un autre cas.
x == y x est égal à y
x != y x est différent de y
c. Opérateurs logiques
Exemples :
a. Avec « if » seul :
Remarque :
Le mot clé « alors » n’existe pas en langage Python. C’est l’indentation, c’est-à-dire le décalage
automatique du retour à la ligne vers la droite à l’aide de 4 espaces, qui le remplace :
b. Avec « if » et « else » :
Exemple :
L'instruction elif permet l'utilisation de conditions imbriquées pour une meilleure visibilité du script :
Script 1 :
Script 2 :
Remarque : le script 2 fait la même chose que le script 1 mais il permet de comprendre plus clairement
le schéma d’exécution d’un programme.
On peut mettre autant de elif que l’on veut après une condition en if.
• Tout comme le else, cette instruction est facultative.
• L’instruction else ne peut figurer qu'une fois, clôturant le bloc de la condition.
• En écrivant une instruction en if, elif, il n’est pas toujours possible de prévoir un else après :
• Exemple : conditions enchainées :
classe= input(‘Quelle classe ?’)
if classe==”collège”:
Si l’élève est au collège, les frais de dossier sont de
fd=30
30€/an elif classe==”lycée”:
fd=40
Si l’élève est au lycée, les frais de dossier sont de
elif classe==”BTS”:
40€/an fd=50
elif classe==”BACHELOR”:
Si l’élève est en BTS, les frais de dossier sont de
fd=60
50€/an elif classe==”MASTERE”:
fd=70
Si l’élève est en BACHELOR, les frais de dossier sont
de 60€/an
Si l’élève est en MASTER, les frais de dossier sont
de 70€/an
V – Boucles
Lorsque l’on veut répéter une séquence un nombre connu de fois, on a souvent recours à une boucle
« for » :
for i in range(m,n,p):
instructions
Le bloc d’instructions est répété plusieurs fois, la variable compteur i étant automatiquement
incrémentée de p à chaque tour de boucle en partant de la valeur m jusqu’à la valeur n-1.
Remarques :
1. range (range = plage) peut s’utiliser avec un, deux ou trois arguments qui doivent obligatoirement
être entiers (éventuellement négatifs) :
– range(n) : de 0 à n – 1 : dans ce cas-là le 1er argument m est par défaut 0 et le pas p est par défaut 1.
– range(m, n) : de m à n – 1 : dans ce cas-là le pas p est par défaut 1.
– range(m, n, p) : de m à n – 1 : avec un pas de p.
Exemples :
Exécuter les programmes suivants :
a. for i in range(10) : b. for i in range(5,10) : c. for i in range(3, 12, 2) :
print(i) print(i) print(i)
d. for j in range(10,1,-2) : e. for j in range(1, 10, -2): f. for entier in range(1,11)
print(j) print(j) print(entier)
2. En plus des boucles for utilisant range, Python fournit aussi une syntaxe permettant de parcourir
simplement tous les éléments d’une chaîne de caractères.
Exemple: Exécuter le script suivant :
mot="bonjour"
for lettre in mot:
print(lettre)
Lorsque le nombre d’itérations dépend d’une condition de durée imprévisible, on a recours à une
boucle while (while signifie « tant que »). Les répétitions se poursuivent tant que la condition est vraie :
while condition:
instructions
Exemple:
Executer le programme suivant:
n = int(input(‘n?’))
while n < 20:
print(n)
n += 2
Attention :
Avec la boucle while apparaît un nouveau phénomène possible: la non-terminaison. Si la valeur de la
condition est toujours vraie, les instructions se répètent indéfiniment, sans que jamais la boucle ne se
termine.
Ce peut être voulu : while True :
etc
ou une erreur dans le script : while n < 20 :
n = n-1
etc
Remarque : Il est toujours possible de remplacer une boucle for par une boucle while.
VI – Divers
1) Ne pas confondre un « algorithme » avec son « programme » (ou « script ») qui est sa traduction
écrite dans un langage exécutable par une machine.
3) Indentation :
• Les indentations (alineas après instruction terminée par ‘’ : ’’) sont essentielles pour Python. Il
ne s'agit pas, comme dans d'autres langages tels que le C++ ou le Java, d'un confort de lecture
mais bien d'un moyen pour le langage de savoir où se trouvent le début et la fin d'un bloc.
4) Commentaires :
Ils sont recommandés pour la lisibilité et la modification des programmes. En Python ils sont introduits
par le symbole #, ou entourés par des triples apostrophes. Ex. :