Institut Supérieur des Métiers de l'Energie
A.U : 2022-2023
Apprendre à programmer avec Python
Dr. Mohamed KHALIFA
Python Keywords and identifiers
Dans ce paragraphe, nous allons apprendre les mots-clés (mots réservés
en Python) et les identifiants (noms donnés aux variables, fonctions, etc.).
Python Keywords
Les mots clés sont des mots réservés prédéfinis utilisés dans la
programmation Python et qui ont une signification particulière pour le
compilateur.
One ne peut pas utiliser un mot-clé comme nom de variable, nom de
fonction ou tout autre identifiant. Ils sont utilisés pour définir la syntaxe
et la structure du langage Python.
Tous les mots clés sauf True, False et None sont en minuscules et doivent
être écrits tels qu’ils sont. La liste complète est donnée ci-dessous.
Python Identifiers
Les identifiants sont les noms donnés aux variables, classes, méthodes,
etc. Par exemple,
Ici, language est une variable (un identifiant) qui contient la valeur
'Python'.
Nous ne pouvons pas utiliser de mots clés comme noms de variables
car ce sont des noms réservés à Python. Par exemple,
Le code ci-dessus est faux car nous avons utilisé continue comme identifiant
Règles pour nommer un identifiant
Les identifiants ne peuvent pas être un mot-clé.
Un identifiant doit commencer par une lettre ou _
La première lettre d'un identifiant ne peut pas être un chiffre.
Les espaces blancs ne sont pas autorisés.
Nous ne pouvons pas utiliser de symboles spéciaux comme !,
@, #, $, etc.
Python Comments (les commentaires)
Dans ce paragraphe, nous découvrirons les instructions Python, pourquoi
nous les utilisons et comment utiliser les commentaires de la bonne
manière.
En programmation informatique, les commentaires sont des indices que
nous utilisons pour rendre notre code plus compréhensible.
Les commentaires sont complètement ignorés par le compilateur. Ils
sont destinés aux autres programmeurs. Par exemple,
Types de commentaires en Python
En Python, il existe deux types de commentaires :
commentaire d'une seule ligne
commentaire sur plusieurs lignes
commentaire d'une seule ligne
commentaire sur plusieurs lignes
Python Variables
Dans ce paragraphe, nous apprendrons les variables Python, les
constantes, les littéraux à l'aide d'exemples.
En programmation, une variable est un conteneur (zone de stockage)
pour contenir des données. Par exemple,
Affectation de valeurs à des variables en Python
N.B: Python est un langage typé
dynamiquement, c’est-à-dire qu'Il
détecte automatiquement le type de
la variable lors de sa déclaration.
Changement la valeur d'une variable en Python
Output
Output
Initiation au langage Python
2. Les opérateurs en python
Les opérateurs d’affectation :
L’affectation est l’instruction qui associe une valeur à une variable.
Elle est symbolisée en python par le signe ”=”.
Les expressions dans le tableau ci-dessous prennent toujours en consi-
dération l’ancienne valeur de X et le résultat sera la nouvelle valeur
de X.
Expression Équivalent Description Opérateur
X=1 X=1 Affecte 1 à la variable X =
X += 1 X=X+1 Incrémente X de 1 +=
X -= 1 X=X-1 Décrémente X de 1 -=
X *= 2 X=X*2 Multiplie X par 2 *=
X /= 2 X=X/2 Divise X par 2 /=
X //= 2 X = X // 2 la division entière de X par 2 //=
X **= 4 X = X ** 4 X à la puissance 4 **=
X %= 2 X=X%2 le reste de la division entière de X par 2 %=
Initiation au langage Python 9/37
Initiation au langage Python
3. Les instructions entrées/sorties
Écrire sur la sortie standard :
La fonction print() accepte un nombre arbitraire d’expressions.
Elle affichera chacune d’elles dans l’ordre, séparées par un es-
pace. La dernière valeur est suivie d’une retour à la ligne.
Exemple :
Résultat :
Initiation au langage Python 10/37
Initiation au langage Python
3. Les instructions entrées/sorties
Lire au clavier :
Pour avoir un programme intéractif, nous allons utiliser la fonc-
tion input(). Elle affiche une invite (chaı̂ne de caractères qui
lui est fournie en paramètre) et récupère les caractères saisis
au clavier par l’utilisateur. Cette fonction renvoie la chaı̂ne de
caractères contenant les caractères saisis par l’utilisateur. Si
une information d’un type particulier est attendu (un entier par
exemple), nous utiliserons les opérations de conversion de type.
Exemple :
Résultat :
Initiation au langage Python 11/37
Initiation au langage Python
4. Blocs d’instructions
Certaines instructions sont regroupées en blocs de la façon suivante :
l’entête du bloc peut être (un test, une boucle, une fonction....),
d’ou vient l’importante notion de l’indentation en Python.
L’indentation (le décalage) se fait avec la touche tabulation ou es-
pace, avec ce décalage on peut insérer un bloc dans un bloc, dans
un bloc......
L’indentation fait partie du langage Python, changer l’indentation
change la signification du programme
Initiation au langage Python 12/37
Initiation au langage Python
5. Les structures conditionnelles (tests)
La structure if :
La forme la plus simple est de if :
Syntaxe :
if expression :
instruction 1 du if
instruction .....
suite
Exemple :
Expression est une expression qui renvoie un booléen, qui est donc évaluée à True
ou False.
Les instructions du bloc du if sont effectuées uniquement si l’expression est évaluée
à True.
Dans tous les cas, le programme reprend à l’instruction après if.
Initiation au langage Python 13/37
Initiation au langage Python
5. Les structures conditionnelles (tests)
La structure if.... else :
On utilise généralement cette structure si nous avons seulement deux
cas à traiter :
Syntaxe :
if expression :
bloc d’instructions du if
else :
bloc d’instructions du else
Exemple :
Initiation au langage Python 14/37
Initiation au langage Python
5. Les structures conditionnelles (tests)
La structure if.... elif .... else :
Si le nombre des cas à tester dépasse deux, nous faisons appel à
cette structure pour faire le nécessaire :
Syntaxe :
if expression1 :
bloc d’instructions du if
elif expression2 :
bloc d’instructions du elif
.....
else :
bloc d’instructions du else
Exemple :
Initiation au langage Python 15/37
Initiation au langage Python
6. Les boucles
En programmation, on est souvent amené à répéter plusieurs fois
une instruction, les boucles vont nous aider à réaliser cette tâche de
manière compacte et efficace.
En python nous avons deux types de boucle :
Boucle bornée
Quand on sait combien de fois doit avoir lieu la répétition, on
utilise généralement une boucle for.
Boucle non bornée
Si on ne connait pas à l’avance le nombre de répétitions, on
choisit une boucle while.
Initiation au langage Python 16/37
Initiation au langage Python
6. Les boucles
Boucle for :
Syntaxe :
for i in ensemble :
bloc d’instructions
Où i est un élément de l’ensemble ensemble. Le bloc instructions
est exécuté pour chaque élément i de l’ensemble ensemble. Cet en-
semble peut être une chaı̂ne de caractères, un tuple, une liste, un
dictionnaire....
La boucle la plus répandue est celle qui parcourt des indices entiers
compris entre 0 et n-1. On utilise pour cela la boucle for et la fonc-
tion range comme dans l’exemple qui suit où nous voulons afficher
”Bonjour” dix fois :
Exemple :
Initiation au langage Python 17/37
Initiation au langage Python
6. Les boucles
Fonction range() dans la boucle for :
Il y a trois versions d’utilisation de cette fonctions :
Type n°1 : pas par défaut =1 :
Exemple :
Résultat :
Initiation au langage Python 18/37
Initiation au langage Python
6. Les boucles
Fonction range() dans la boucle for :
Type n°2 : pas par défaut =1 :
Exemple :
Résultat :
Initiation au langage Python 19/37
Initiation au langage Python
6. Les boucles
Fonction range() dans la boucle for :
Type n°3 : pas est donné :
Exemple :
Résultat :
Initiation au langage Python 20/37
Initiation au langage Python
6. Les boucles
Boucle while :
Syntaxe :
while expression :
bloc d’instructions
Où expression est une condition qui détermine la poursuite de la
répétition des instructions incluses dans la boucle. Tant que celle-ci
est vraie, le bloc d’instructions est exécuté.
Tout comme les tests, l’indentation joue un rôle important. Le décalage
des lignes d’un cran vers la droite par rapport à l’instruction while
permet de les inclure dans la boucle.
Exemple : nous voulons afficher ”Bonjour” dix fois
Initiation au langage Python 21/37
Initiation au langage Python
7. Les listes
Une liste est une structure de données qui contient une série de va-
leurs. Python autorise la construction de liste contenant des valeurs
de types différents (par exemple entier et chaı̂ne de caractères), ce
qui leur confère une grande flexibilité.
Une liste est déclarée par une série de valeurs (n’oubliez pas les
guillemets, simples ou doubles, s’il s’agit de chaı̂nes de caractères)
séparées par des virgules, et le tout encadré par des crochets.
Exemples :
Lorsque l’on affiche une liste, Python la restitue telle qu’elle a été
saisie, en tapant print(animaux) par exemple on aura :
Initiation au langage Python 22/37
Initiation au langage Python
7. Les listes
Manipulation de listes :
On peut accéder aux éléments d’une liste en utilisant leurs position
(indices), sachant que les indices en python commencent de 0 jus-
qu’au n-1 pour une liste de n éléments.
Exemple :
Résultat :
Initiation au langage Python 23/37
Initiation au langage Python
7. Les listes
Manipulation de listes :
On peut aussi accéder aux éléments par indexation négative. Le
dernier élément de la liste est alors numéroté -1. Avec la liste de
l’exemple précédent, on obtient par exemple :
Exemple :
Résultat :
Exemple :
Résultat :
Initiation au langage Python 24/37
Initiation au langage Python
7. Les listes
Opération sur les listes :
Tout comme les chaı̂nes de caractères, les listes supportent l’opérateur
+ de concaténation, ainsi que l’opérateur * pour la duplication.
Exemple :
Résultat :
Initiation au langage Python 25/37
Initiation au langage Python
7. Les listes
Opération sur les listes :
Les listes possèdent de nombreuses fonctions qui leur sont propres et
qui peuvent se révéler très pratiques comme (append, insert, len....).
Fonction append() :
La fonction append() ajoute un élément à la fin d’une liste :
Exemple :
Résultat :
Initiation au langage Python 26/37
Initiation au langage Python
7. Les listes
Opération sur les listes :
Fonction insert() :
La fonction insert() insère un objet dans une liste avec un indice
déterminé :
Exemple :
Résultat :
Initiation au langage Python 27/37
Initiation au langage Python
7. Les listes
Opération sur les listes :
Fonction len() :
L’instruction len() vous permet de connaı̂tre la longueur d’une liste,
c’est-à-dire le nombre d’éléments que contient la liste.
Exemple :
Résultat :
Remarque :
Les chaı̂nes de caractères peuvent être considérées comme des listes (de caractères) un
peu particulières :
Exemple :
animaux = ”girafe tigre”
print(animaux) ===> ’girafe tigre’, pas de crochets.
animaux[3] ===> ’a’
Initiation au langage Python 28/37
Initiation au langage Python
7. Les listes
Opération sur les listes : Slicing
Il s’agit simplement de l’extraction d’une tranche de la liste, en
précisant un indice initial et un indice final. On peut définir un pas
p, ce qui permet de n’extraire qu’un terme sur p (par exemple les
termes d’indice pair ou impair en prenant p = 2)
Si le premier indice est omis, il est pris égal à 0 par défaut.
Si le deuxième indice est omis, il est pris égal à la longueur de
la liste par défaut (on extrait la tranche finale)
Si le troisième indice est omis, il est pris égal à 1 par défaut
(cas de la première instruction ci-dessus)
Un pas négatif permet d’inverser l’ordre des termes
Le slicing est possible aussi avec des indexations négatives.
Initiation au langage Python 29/37
Initiation au langage Python
7. Les listes
Exemple :
Initiation au langage Python 30/37
Initiation au langage Python
8. Les fonctions
En programmation, les fonctions sont très utiles pour réaliser plu-
sieurs fois la même opération au sein d’un programme. Elles rendent
également le code plus lisible et plus clair en le fractionnant en blocs
logiques.
Exemple : si vous appelez la fonction len() de la manière suivante.
Résultat :
Voici ce qui se passe :
vous appelez ”len()” en lui passant une liste en argument (ici la liste [0, 1, 2]) ;
la fonction calcule la longueur de cette liste ;
elle vous renvoie un entier égal à cette longueur (stocké dans la variable long).
Initiation au langage Python 31/37
Initiation au langage Python
8. Les fonctions
Définition
Pour définir une fonction, Python utilise le mot-clé def. Si on sou-
haite que la fonction renvoie quelque chose, il faut utiliser le mot-clé
return.
Exemple :
Notez que la syntaxe de def utilise les deux-points comme les boucles for et while ainsi
que les tests if, un bloc d’instructions est donc attendu. De même que pour les boucles
et les tests, l’indentation de ce bloc d’instructions (qu’on appelle le corps de la fonction)
est obligatoire.
Dans l’exemple précédent, nous avons passé un argument à la fonction carre() qui nous
a renvoyé (ou retourné) une valeur que nous avons immédiatement affichée à l’écran
avec l’instruction print(). Que veut dire valeur renvoyée ? Et bien cela signifie que cette
dernière est récupérable dans une variable.
Initiation au langage Python 32/37
Initiation au langage Python
8. Les fonctions
Notez qu’une fonction ne prend pas forcément un argument et ne
renvoie pas forcément une valeur.
Exemple :
Dans ce cas la fonction, hello() affiche la chaı̂ne de caractères ”Bon-
jour SUPNUM !”. Elle ne prend aucun argument et ne renvoie rien.
Passage d’arguments
Le nombre d’arguments que l’on peut passer à une fonction est
variable. Le nombre d’argument est donc laissé libre à l’initiative du
programmeur qui développe une nouvelle fonction.
Exemple : Vu que le typage est dynamique c’est pas la peine de
mettre les types des arguments.
Initiation au langage Python 33/37
Initiation au langage Python
9. Les Dictionnaires
Les dictionnaires se révèlent très pratiques lorsque vous devez mani-
puler des structures complexes à décrire et que les listes présentent
leurs limites. Les dictionnaires sont des collections non ordonnées
d’objets, c’est-à-dire qu’il n’y a pas de notion d’ordre (i.e. pas d’in-
dice). On accède aux valeurs d’un dictionnaire par des clés. Ceci
semble un peu confus ? Regardez l’exemple suivant.
Exemple :
Résultat :
Initiation au langage Python 34/37
Initiation au langage Python
9. Les Dictionnaires
Dans l’exemple précédent, En premier on définit un dictionnaire vide
avec les accolades (tout comme on peut le faire pour les listes avec
[]). Ensuite, on remplit le dictionnaire avec différentes clés (”Nume-
rique”,”Stat”, ”energie”) auxquelles on affecte des valeurs (”SUP-
NUM”,”ISMS”, ”ISME”). Vous pouvez mettre autant de clés que
vous voulez dans un dictionnaire (tout comme vous pouvez ajouter
autant d’éléments que vous voulez dans une liste).
Pour récupérer la valeur associée à une clé donnée, il suffit d’utiliser
la syntaxe suivante dictionnaire[”cle”].
Exemple :
Résultat :
Initiation au langage Python 35/37
Initiation au langage Python
11. Les modules
Les modules sont des programmes Python qui contiennent des fonc-
tions que l’on est amené à réutiliser souvent (on les appelle aussi
bibliothèques ou libraries). Ce sont des ≪ boı̂tes à outils ≫ qui vont
vous être très utiles.
Les développeurs de Python ont mis au point de nombreux modules
qui effectuent une quantité phénoménale de tâches. Pour cette rai-
son, prenez toujours le réflexe de vérifier si une partie du code que
vous souhaitez écrire n’existe pas déjà sous forme de module.
La plupart de ces modules sont déjà installés dans les versions stan-
dards de Python. Vous pouvez accéder à une documentation ex-
haustive sur le site de Python ([Link]
[Link]). N’hésitez pas à explorer un peu ce site, la
quantité de modules disponibles est impressionnante (plus de 300).
Initiation au langage Python 36/37
Initiation au langage Python
11. Les modules
Par exemple le module math est un module standard en Python,
toujours disponible (c’est pas la peine de le télécharger). Pour utiliser
des fonctions mathématiques sous ce module, vous devez importer
le module en utilisant import math.
Exemple :
Résultat :
Remarque :
pour importer les modules qui ne sont pas inclus dans la version standard de Python on
utilise la commande (pip install nom du module) afin de les télécharger puis on utlise
import...
Initiation au langage Python 37/37