Université Abdelmalek Essâadi
Faculté poly disciplinaire – Larache
Cours Python
Université Abdelmalek Essâadi
Faculté poly disciplinaire – Larache
Présenté par : Pr ELKHADIR Zyad
Zyad ELKHADIR Cours de Python 1
Plan
1. Histoire 9. Structures de données
2. Caractéristiques
3. Utilisations
4. L’IDE utilisé + Installation du Python
5. Instructions de bases 1. Variables
2. print() & input()
3. Expressions arithmétiques , de
6. Structures Conditionnelles
comparaison et logiques
7. Structures Répétitives
8. Fonctions et modules
Zyad ELKHADIR Cours de Python 2
Histoire
• Le nom Python vient d’un hommage à la série
télévisée Monty Python’s Flying Circus dont G. van
Rossum est fan.
• La première version publique de ce langage a été
publiée en 1991
Zyad ELKHADIR Cours de Python 3
Caractéristiques de Python
Zyad ELKHADIR Cours Python 4
Caractéristiques
• Python est un langage interprété.
• Un script Python n’a pas besoin
d’être compilé pour être exécuté,
contrairement à des langages comme
le C ou le C++
Processus de compilation
Zyad ELKHADIR Cours de Python 5
Caractéristiques
Zyad ELKHADIR Cours de Python 6
Caractéristiques
Zyad ELKHADIR Cours de Python 7
Caractéristiques
Zyad ELKHADIR Cours de Python 8
Caractéristiques
Instructions qui Un programme est
Chaque programme
modifient l’état de un ensemble d’objets
est une fonction au
l’environnement en interaction
sens mathématique
9
Zyad ELKHADIR Cours de Python 9
Utilisations de Python
Zyad ELKHADIR Cours d’Algorithmique 1 / Python 10
Utilisations
11
Zyad ELKHADIR Cours de Python 11
Utilisations
12
Zyad ELKHADIR Cours de Python 12
Utilisations
13
Zyad ELKHADIR Cours de Python 13
Installation Python & IDE utilisé
Zyad ELKHADIR Cours Python 14
IDE : Integrated Development Environment
15
Zyad ELKHADIR Cours de Python 15
IDE : Integrated Development Environment
16
Zyad ELKHADIR Cours de Python 16
Installation Python 3
17
Zyad ELKHADIR Cours de Python 17
Installation Python 3
18
Zyad ELKHADIR Cours de Python 18
Installation Python 3
19
Zyad ELKHADIR Cours de Python 19
Installation Python 3
20
Zyad ELKHADIR Cours de Python 20
Installation PyCharm
21
Zyad ELKHADIR Cours de Python 21
Installation PyCharm
22
Zyad ELKHADIR Cours de Python 22
Installation PyCharm
23
Zyad ELKHADIR Cours de Python 23
Installation PyCharm
24
Zyad ELKHADIR Cours de Python 24
Instructions de base
1. Variables
2. print() & input()
3. Expressions arithmétiques , de comparaison
et logiques
Zyad ELKHADIR Cours Python 25
Déclaration et Initialisation des Variables
• Une variable est une zone de la mémoire
de l’ordinateur dans laquelle une valeur
est stockée.
• La déclaration d’une variable et son
initialisation se font en même temps
• X= 2 ➔
1. Python a « deviné » que la variable était un entier (typage
dynamique)
2. Python a alloué (réservé) l’espace en mémoire pour y
accueillir un entier,
3. Python a assigné la valeur 2 à la variable X
26
Zyad ELKHADIR Cours de Python 26
Utilisation des Variables / Règles de nommage
• Le nom de la variable ne doit pas commencer
par un nombre
• Eviter les mots réservés par Python (print, def,
and, try, for,…)
• Python est sensible a la casse , ce qui signifie
que les variables Surface, surface ou SURFACE
sont différentes
• On peut utiliser les lettres minuscules (a à z) ou
majuscules (A à Z), des chiffres (0 à 9) ou le
caractère _ pour nommer les variables.
27
Zyad ELKHADIR Cours de Python 27
Affectation Multiple
• Python donne la possibilité d’affecter des valeurs a plusieurs
variables sur une seule ligne
28
Zyad ELKHADIR Cours de Python 28
La fonction type()
• Si vous ne vous souvenez plus du type d’une variable,
utilisez la fonction type() qui vous le rappellera
29
Zyad ELKHADIR Cours de Python 29
Démonstration sur PyCharm
30
Zyad ELKHADIR Cours de Python 30
Démonstration sur PyCharm
31
Zyad ELKHADIR Cours de Python 31
Instructions de base
1. Variables
2. print() & input()
3. Expressions arithmétiques , de comparaison
et logiques
Zyad ELKHADIR Cours Python 32
La fonction print()
• la fonction print() affiche l’argument qu’on lui passe entre
parenthèses et un retour à ligne
• Un argument peut être :
• Une chaine de caractères (entre 2 guillemets)
• Un nombre, une variable , un résultat d’une opération entre
plusieurs variables
33
Zyad ELKHADIR Cours de Python 33
La fonction print() : Exemples
• Sur l’écran ou la console on aura le
message : Maroc
• Sur l’écran ou la console le contenu
de la variable A sera affiché
• Le message affiché sera : Les
coordonnées sont (le contenu de X)
et (le contenu de Y) avec un espace
entre les deux
34
Zyad ELKHADIR Cours de Python 34
La fonction input()
• La fonction Input() permet de demander a l’utilisateur de fournir des
informations
• Chaque information est stockée dans une variable
• Par défaut l’information saisi est affectée a une variable de type string
• Lors de l’exécution de input() , la machine attend a ce qu’on lui fournisse
une valeur.
35
Zyad ELKHADIR Cours de Python 35
La fonction input()
• Pour récupérer des valeurs de type int ou float on utilise :
36
Zyad ELKHADIR Cours de Python 36
Exemple de print() et input()
• Ecrire un programme python permettant de calculer l’air d’un rectangle en
demandant la largeur largeur et la longueur longueur :
37
Zyad ELKHADIR Cours de Python 37
Instructions de base
1. Variables
2. print() & input()
3. Expressions arithmétiques , de comparaison
et logiques
Zyad ELKHADIR Cours Python 38
Expression Arithmétique et Opérateurs
• Une expression arithmétique est formée par des combinaisons d’objets
numérique (entier et réel) et des operateurs arithmétiques
• Une expression arithmétique donne un résultat numérique dont le type est
entier ou réel
• Les opérateurs arithmétiques usuels sont :
39
Zyad ELKHADIR Cours de Python 39
Opérateurs Arithmétiques Composés
40
Zyad ELKHADIR Cours de Python 40
Opérateurs Arithmétiques Composés
• Donner les valeurs des variables après chaque instruction :
41
Zyad ELKHADIR Cours de Python 41
Expressions de Comparaison
• Une expression de comparaison donne un résultat booléen (vrai ou
faux). Les operateurs de comparaison usuels sont
42
Zyad ELKHADIR Cours de Python 42
Expressions de Comparaison
• Donner la valeur de la variable A (booléen) après chaque instruction :
43
Zyad ELKHADIR Cours de Python 43
Expressions Logiques
• Une expression logique est la composée d’expressions de
comparaisons par les operateurs logiques :
44
Zyad ELKHADIR Cours de Python 44
Expressions Logiques
• La table de vérité est donnée par :
45
Zyad ELKHADIR Cours de Python 45
Expressions Logiques
• Quelle sera la valeur de A, B , C, D,E,F et G ?
46
Zyad ELKHADIR Cours de Python 46
Rappel Algorithme vs Python
Algorithme operation_Ecrire_Lire
print("un exemple d’algorithme")
Variable a : chaine de caractères
Variable b: entier
Variable c: réel a=input("entrer une chaine de caractère")
Début
Ecrire(" un exemple d’algorithme ")
b=int(input("entrer un entier"))
Ecrire("entrer une chaine de caractère")
Lire(a)
Ecrire("entrer un entier ") c=float(input("entrer un réel "))
Lire(b)
Ecrire("entrer un réel ")
Lire(c)
Fin
Zyad ELKHADIR Cours d’Algorithmique 1 / Python 47
Rappel
Expressions arithmétiques , de comparaison et logiques
Zyad ELKHADIR Cours d’Algorithmique 1 / Python 48
Plan
1. Histoire 9. Structures de données
2. Caractéristiques
3. Utilisations
4. L’IDE utilisé + Installation du Python
5. Instructions de bases
6. Structures Conditionnelles
7. Structures Répétitives
8. Fonctions et modules
49
Zyad ELKHADIR Cours de Python 49
Context & Problem
50
Zyad ELKHADIR Cours de Python 50
Context & Problem
51
Zyad ELKHADIR Cours de Python 51
Structure Conditionnelle
• La structure conditionnelle est une structure dont les instructions sont
exécutées selon les réponses des conditions
52
Zyad ELKHADIR Cours de Python 52
La structure conditionnelle simple (un choix)
53
Zyad ELKHADIR Cours de Python 53
La structure conditionnelle simple (un choix) / Exercice
54
Zyad ELKHADIR Cours de Python 54
La structure conditionnelle alternative (2 choix)
55
Zyad ELKHADIR Cours de Python 55
La structure conditionnelle alternative / Exercice
56
Zyad ELKHADIR Cours de Python 56
Opérateur ternaire
• L’operateur ternaire permet de simplifier la syntaxe de la structure
conditionnelle.
• L’ exemple précèdent peut être réécrit comme suit :
57
Zyad ELKHADIR Cours de Python 57
La structure à choix mutliple
58
Zyad ELKHADIR Cours de Python 58
Quiz
59
Zyad ELKHADIR Cours de Python 59
La structure à choix multiple / Exercice
60
Zyad ELKHADIR Cours de Python 60
La structure à choix multiple / utilisation de match
• Dans le cas ou on a des valeurs connues (valeurs discrètes) et non
pas des intervalles (valeurs continues) avec quoi comparer on peut
utiliser match au lieu de if, elif,…else
61
Zyad ELKHADIR Cours de Python 61
Plan
1. Histoire 9. Structures de données
2. Caractéristiques
3. Utilisations
4. L’IDE utilisé + Installation du Python
5. Instructions de bases
6. Structures Conditionnelles
7. Structures Répétitives
8. Fonctions et modules
62
Zyad ELKHADIR Cours de Python 62
Context / Problème
63
Zyad ELKHADIR Cours de Python 63
Définitions
• La structure répétitive (boucle) permet d’exécuter plusieurs
fois une séquence d’instructions.
64
Zyad ELKHADIR Cours de Python 64
La boucle for
65
Zyad ELKHADIR Cours de Python 65
La boucle for / Les types de range ()
n ,n+1,…………………….., m-1
n ,n+p,n+2p………………..,<= m-1
p p p
66
Zyad ELKHADIR Cours de Python 66
La boucle for / Exemple de range ()
• On veut afficher les cinq premiers chiffres : 1, 2, 3, 4, 5
• On veut afficher le message « hello world » 4 fois
67
Zyad ELKHADIR Cours de Python 67
Quiz
(les `/` remplacent ici un retour à la
ligne)?
68
Zyad ELKHADIR Cours de Python 68
Quiz
(les `/` remplacent ici un retour à la
ligne)?
Que mettre à la place des ... pour que
ce programme affiche la valeur de la
somme 2*0 + 2*1 + 2*2 + 2*3 +2*4
69
Zyad ELKHADIR Cours de Python 69
Quiz
Créez un programme qui affiche, pour chaque entier entre 0 et 100, son
carré. il doit afficher :
70
Zyad ELKHADIR Cours de Python 70
La boucle for / Exemples de range ()
71
Zyad ELKHADIR Cours de Python 71
La boucle for / Exercice
• Ecrire un programme permettant de calculer la somme des
20 premiers entiers positifs
72
Zyad ELKHADIR Cours de Python 72
Les boucles imbriquées (avec for)
Algorithme affichant les tableaux de multiplication 1→ 10
73
Zyad ELKHADIR Cours de Python 73
Les boucles imbriquées (avec for)
74
Zyad ELKHADIR Cours de Python 74
Les boucles imbriquées (avec for)
• L’imbrication de boucles permet d’écrire une boucle dans le
bloc d’instructions d’une autre boucle
75
Zyad ELKHADIR Cours de Python 75
Les boucles imbriquées (avec for)
76
Zyad ELKHADIR Cours de Python 76
Les boucles imbriquées / Exercice
• Ecrire un programme qui prend un nombre L de lignes & un
nombre C de colonnes puis affiche un « rectangle d'étoiles »
de L lignes et C colonnes.
C=8
L=5 Permet d’afficher * et
rester sur la mm ligne
77
Zyad ELKHADIR Cours de Python 77
La boucle while
• Cette boucle permet de répéter un bloc d’instructions tant
qu’une condition est vraie.
Permet d’afficher les
chiffres de 0 a 3 :
0
1
2
3 78
Zyad ELKHADIR Cours de Python 78
La boucle while
• Sur l’exemple suivant on peut utiliser la boucle for avec
range() comment ?
• Supposons qu'on veuille trouver la plus petite valeur de n
telle que n**2 dépasse 1000.
79
Zyad ELKHADIR Cours de Python 79
La boucle while
• On commence par 0 , 0*0 <= 1000 donc on continue
• Ensuite 1, 1*1 <= 1000 donc on continue
• On teste sur 2, 2*2= 4 <= 1000 donc on continue
• ...........
• ...........
• On arrête lorsque n**2 > 1000, dans ce cas on affiche n
80
Zyad ELKHADIR Cours de Python 80
Quiz / Exercice
81
Zyad ELKHADIR Cours de Python 81
Quiz / Exercice
82
Zyad ELKHADIR Cours de Python 82
break, continue
• Il existe deux instructions très utiles qu'on peut utiliser à l'intérieur d'une
boucle aussi bien for que while et qui permettent d'agir sur la boucle pour
l'arrêter ou sauter des étapes.
• break permet de stopper le • continue permet d’ignorer
déroulement d’une boucle et l’itération actuelle et passer a
passer a l’instruction suivante l’itération suivante
83
Zyad ELKHADIR Cours de Python 83
break, continue : Exemples
84
Zyad ELKHADIR Cours de Python 84
break, continue : Exemples
85
Zyad ELKHADIR Cours de Python 85
Plan
1. Histoire 9. Fonctions et modules
2. Caractéristiques
3. Utilisations
4. L’IDE utilisé + Installation du Python
5. Instructions de bases
6. Structures Conditionnelles
7. Structures Répétitives
8. Structures de données
86
Zyad ELKHADIR Cours de Python 86
Structures de données
Une seule variable qui contiendrait toutes les
informations ?
Les listes & les Tuples & Les Dictionnaires
87
Zyad ELKHADIR Cours de Python 87
Les listes / definitions
• Les listes sont des structures de données ordonnées,
• Chaque élément de la liste est associé un indice et il démarre à 0
(et non à 1).
• Le premier élément est donc associé à l’indice 0, le second à
l’indice 1, etc.
• Déclarer une liste est assez similaire à la déclaration de n’importe
quelle variable :
• Via un nom auquel on associe une liste d’éléments à
stocker dans ce nom.
Par exemple :
88
Zyad ELKHADIR Cours de Python 88
Les listes
• Accès & Changement d’une valeur à un indice donné
• Pour afficher le premier élément de la liste
89
Zyad ELKHADIR Cours de Python 89
Les listes
• Une liste peut contenir des types différents
90
Zyad ELKHADIR Cours de Python 90
Les listes / Ajout, Suppression, Recherche d’élément , Taille
• append() pour ajouter un élément a fin de la liste
• insert() pour insérer un nouvel élément a une position spécifique
• extend() permet d’ajouter une liste a une autre liste
• remove() cherche un élément donné et supprime la première
occurrence rencontrée dans la liste
• index permet de trouver l’indice de la première occurrence d’un
élément dans la liste
• del pour supprimer un élément selon son indice
• len() pour calculer la taille d’une liste.
• sorted(liste) pour afficher une liste triée
91
Zyad ELKHADIR Cours de Python 91
Les listes / Ajout, Suppression, Recherche d’élément, Taille
92
Zyad ELKHADIR Cours de Python 92
Tester si un élément appartient à une liste ?
• L’operateur in est un opérateur booléen qui vérifie si un élément existe dans
une liste
• L’operateur not in est un opérateur booléen qui vérifie si un élément n’existe
pas dans une liste
93
Zyad ELKHADIR Cours de Python 93
Comment parcourir une liste via une boucle ?
𝒻𝑜𝓇
𝓇𝒶𝓃𝑔𝑒() + 𝓁𝑒𝓃()
𝑒𝓃𝓊𝓂𝑒𝓇𝒶𝓉𝑒()
𝓏𝒾𝓅()
94
Zyad ELKHADIR Cours de Python 94
Simple boucle for
95
Zyad ELKHADIR Cours de Python 95
Simple boucle for
96
Zyad ELKHADIR Cours de Python 96
range() + len()
BESOIN de L’index de
l’élément aussi
97
Zyad ELKHADIR Cours de Python 97
range() + len()
• Dans le cas ou on a besoin d’utiliser les index(indices) des
éléments de la liste on combine les fonctions range() et len() avec
la boucle for
98
Zyad ELKHADIR Cours de Python 98
enumerate()
BESOIN de L’index de
l’élément aussi
99
Zyad ELKHADIR Cours de Python 99
enumerate()
• On peut utiliser la fonction enumerate() pour accéder a la fois a
l’index et la valeur de chaque élément.
• Par défaut la valeur de l’index commence a 0, on peut lui donner
une autre valeur a l’aide du paramètre start
100
Zyad ELKHADIR Cours de Python 100
zip() ?
101
Zyad ELKHADIR Cours de Python 101
zip() ?
• Si on veut parcourir deux ou plusieurs listes en parallèle on utilise
zip().
• La boucle va s’ arrêter a l’élément qui correspond a la plus petite
taille des listes (L1,L2,…)
102
Zyad ELKHADIR Cours de Python 102
zip() ?
• Exemples :
103
Zyad ELKHADIR Cours de Python 103
Quiz ?
104
Zyad ELKHADIR Cours de Python 104
Quiz ?
105
Zyad ELKHADIR Cours de Python 105
Les Tuples / Declaration et Manipulation
• Les tuples sont très semblables aux listes
• Ce sont des objets ordonnés, on peut donc accéder aux différentes
éléments stockés dans un tuple à partir de leur indice ;
• Vous pouvez stocker tous types d'objets au sein d'un tuple
• Un tuple ne peut pas être modifié. On dit alors qu'il n'est
pas mutable.
Zyad ELKHADIR Cours de Python 106