Initiation à la
programmation
Python
1
2
1. Introduction
a. Présentation de Python
Pourquoi Python ?
Python est un langage de programmation:
- Facile à apprendre
- Simple à lire
- Riche en fonctionnalités (modules)
- Très utilisé (mathématiques et supérieur)
3
b. Caractéristiques du langage
⚫ Python est un langage d e programmation :
➢ Portable: dont les programmes peuvent être exécutés sur
différentes plateformes ou systèmes d'exploitation avec peu ou
pas de modifications.
➢ Libre: Le code source de Python est disponible sous une
licence open source, permettant à quiconque de l'utiliser et de
l'adapter à ses besoins.
➢ Gratuit: fait référence à un langage de programmation qui peut
être utilisé sans coût, c'est-à-dire sans que l'utilisateur n'ait à
payer pour télécharger, installer ou utiliser le langage. 4
• Python permet une approche
• Modulaire: permet de structurer un programme en modules,
c'est-à-dire en unités de code qui peuvent être développées,
testées, et réutilisées indépendamment les unes des autres.
• Orientée objet de la programmation: permet de modéliser
des objets du monde réel sous forme de classes et d'objets.
Ces objets possèdent des attributs (ou propriétés) et des
méthodes (ou fonctions) qui définissent leur comportement.
5
2. Installation de Python
Où et comment saisir un programme ?
Avec EduPython Avec Anaconda
6
a. Anaconda
Anaconda est une distribution open-source de Python qui facilite la gestion des
bibliothèques, des environnements et des dépendances pour le développement de logiciels,
en particulier dans les domaines de la science des données, de l'analyse de données, de
l'intelligence artificielle et du calcul scientifique.
Les principales caractéristiques d'Anaconda sont :
➢ Gestion des environnements : Anaconda permet de créer et de gérer facilement des
environnements Python virtuels. Cela permet d'isoler des projets avec des versions et
des ensembles de bibliothèques spécifiques, évitant ainsi les conflits de versions.
➢ Bibliothèques préinstallées : Anaconda inclut une vaste collection de bibliothèques
populaires pour la science des données, telles que NumPy, Pandas, Matplotlib, SciPy,
Scikit-learn, TensorFlow, Jupyter, et bien d'autres. Cela permet de commencer
immédiatement à travailler avec ces outils sans avoir besoin de les installer séparément.
➢ Outils de développement : Anaconda propose des outils comme Jupyter Notebook et
Spyder (un IDE Python), qui sont des environnements interactifs très utilisés dans le
domaine de l'analyse de données et du calcul scientifique.
7
b. Installer A n a c o n d a
➢ Rendez-vous sur le site officiel d'Anaconda pour télécharger l'installateur :
[Link]
➢ Choisissez la version d'Anaconda appropriée en fonction de votre système
d'exploitation (Windows, macOS, Linux) et de votre architecture (64 bits ou 32 bits).
8
c. Lancer anaconda
Anaconda Navigator est une interface graphique qui vous
permet de gérer vos environnements, installer des paquets, et
lancer des applications comme Jupyter Notebook, Spyder.
Sur Windows :
[Link] le menu Démarrer.
[Link] "Anaconda Navigator" dans la barre de recherche.
[Link] sur Anaconda Navigator dans les résultats pour
l'ouvrir.
1
3. Utilisation de Python
Spyder est un acronyme signifiant « Scientific PYthon Development EnviRonment » :
Spyder est donc plutôt orienté calculs scientifiques, bien qu'on puisse développer
n'importe quel type d'applications. Spyder est un projet « open Source » et peut être
téléchargé gratuitement.
Pour utiliser Python, on fait appel à
Spyder : Environement d e développement scientifique
Lancer Spyder 10
a. L a n c e r Spyder
Ouvrez Anaconda Navigator puis cliquez sur le bouton "launch" de Spyder.
(1) (2)
11
SPYDER :
Spyder lancé, vous devriez obtenir quelque chose qui ressemble à cela
:
12
b. Mode d’Utilisation de Python
Python peut être utilisé en deux modes:
Mode interactif: Aussi appelé mode console, l'interpréteur vous permet d'encoder les
instructions une à une. Aussitôt une instruction encodée, il suffit d'appuyer sur la
touche ENTER pour que l'interpréteur l'exécute.
Mode script: Où vous devez avoir préalablement écrit toutes les instructions de
votre programme dans un fichier texte, et l'avoir enregistré sur votre ordinateur. On
utilise généralement l'extension de fichier .py pour des fichiers contenant du code
Python.
13
SPYDER :
Environement d e d é v e l o p p e me n t scientifique
Editeur de fichier
Interpréteur interactif
14
c. M o d e i n t e r a ct i f
⚫ L'interpréteur interactif permet d'écrire et d'exécuter
du code, d e faire des tests rapides .
15
Exemples d e C a l c u l
Son invite de commande est différente de celle de l’interpréteur Python standard (qui est >>>).
Elle se présente de la façon suivante :
Exemple de première utilisation de Python :
Les parties qui débutent par In et Out correspondent aux entrées et sorties respectivement.
16
Premiers calculs
Testez les calculs suivants :
Pour calculer une puissance, on utilise **.
L’opérateur /
Pour réaliser une division entière, il faut utiliser // :
17
4. Les variables
Une variable peut être vue comme une boite (virtuelle) représentant un
emplacement en mémoire qui permet de stocker une valeur, et à qui on a
donné un nom afin de facilement l'identifier. La figure 4 illustre ce concept
en montrant une variable dont le nom est data et dont la valeur est le nombre
entier 42.
Exemple: Programme qui utilise plusieurs variables pour calculer le discriminant
du trinôme
18
a. Les noms de variables
Les noms d e variables doivent respecter quelques règles simples :
➢ Un n o m d e variable est une séq u en ce d e lettres (a → z , A → Z) et d e
chiffres (0 → 9).
➢ Un nom de variable doit commencer par une lettre.
➢ Le caractère “_“ est autorisé.
➢ Les lettres accentuées, les cédilles , les espaces , les caractères spéciaux tels
que $, #, @, etc. sont interdits.
➢ La casse est significative (les caractères majuscules et minuscules sont
distingués).
19
5 . O p é r a t i o n s d e base sur les variables
1. Affectation
2. Entrée des données
3. Sortie des résultats
20
5. Opérations d e b a s e
a. Affectation
Le symbole = est à distinguer du signe égal utilisé en mathématiques pour énoncer une égalité. En
Python, il permet d'affecter une valeur à une variable.
Syntaxe :
Nom d e variable = expression
Exemples:
17
21
b. Affectation composée
Ce que l'on doit parfois faire, c'est mettre à jour une variable par rapport à la valeur
qu'elle possède actuellement. Par exemple, si on veut augmenter la valeur d'une
variable data de 1, on doit écrire :
En programmation, une règle de bonne pratique consiste à éviter au maximum la
duplication de code. Pour simplifier cette instruction, Python propose
l'opérateur += qui fait l'addition suivie de l'affectation en une fois. L'exemple précédent
se réécrit donc comme suit :
22
c. Type de donnée
Types numériques
Il y a trois types numériques en Python :
•Le type entier (int) permet de représenter n'importe quel nombre entier, peu importe
sa taille.
•Le type flottant (float) permet de représenter des nombres comportant une partie
décimale, compris entre 10−308 et 10308 .
•Le type complexe (complex) permet de représenter des nombres complexes, où le
nombre imaginaire se note j.
Exemple:
Comme le montre l'exemple suivant, les flottants
peuvent être écrits en notation scientifique. Il s'agit d'un
programme qui calcule les deux racines complexes d'un
trinôme du second degré :
23
c. Type de donnée
Types Chaine de caractères
Une chaine de caractères (str) est une séquence de caractères, délimitée par des guillemets
dans sa forme littérale (simple ' ou double "). On peut généralement utiliser indifféremment
l'un ou l'autre type de guillemets.
Tous les caractères, à quelques exceptions près, sont acceptés pour définir une chaine de
caractères. Tout d'abord, il est évident que si vous souhaitez utiliser le caractère ", vous ne
pourrez pas l'utiliser pour délimiter la chaine de caractères, mais vous devrez utiliser ', et
inversement.
Exemple:
24
c. Type de donnée
Type booléen
Un booléen est une variable qui peut avoir deux états possibles, généralement vrai ou
faux, en langage Python True ou False.
Les booléens sont très utiles pour des tests.
Le type d'un booléen en Python est bool.
Les opérateurs logique
Exemple
25
d. Entrée des données
La fonction input()
L’utilisateur est invité à entrer des caractères au clavier et à terminer
a v e c <Enter>.
Le résultat d e cette fonction est d e type “chaine de
caractères”.
Syntaxe:
nom_variable =input("Msg … : ")
26
Entrée des données: chaine d e caractères
Exemple 1:
Afficher le résultat
Taper le nom de la variable
27
Entrée des données : entier/réel
Exemple2
Afficher le résultat
28
Entrée des données : entier/réel
Exemple 3 :
- Lire un 2ème entier.
▪ Calculer la somme(nb, nb2)
▪ Calculer la multiplication (nb,nb2)
29
Exemple 3 :
Afficher le résultat
Nécessite une conversion de type
30
Chaine → entier/réel
Exemple 3 :
Les fonctions : int & float
31
e. Mode script
Pour garder le c o d e écrit et l’exécuter à c h a q u e fois, il est
nécessaire d’utiliser le c o n c e p t d e script.
1. Ecrire le c o d e en utilisant un éditeur d e texte
2. Exécuter le code.
3. Obtenir les résultats
L’extension d’un fichier de code Python est «.py »
32
Mode script
SPYDER : Environement de développement scientifique
Exécution totale
Exécution partielle Répertoire courant
Editeur de fichier
26
33
f. Sortie des résultats (Affichage de message)
La fonction print permet d'afficher n'importe quel objet Python dans la
console. Pour cela, il suffit d'indiquer l'objet à afficher entre parenthèses.
Syntaxe:
print(“msg”)
print(“msg”)
print (“msg”, variable)
34
Exercices:
1. Assignez les valeurs respectives 30, 60, 90 à trois
variables x, y, z.
2. Effectuez l’opération (x * y )/z.
3. Lisez votre nom & prénom.
4. Affichez votre nom & Prénom
35
6. Les instructions d e contrôle
a. Instructions conditionnelles
b. Instructions répétitives
36
6. Les instructions de contrôle
a. Les instructions conditionnelles
Syntaxe
if condition:
Bloc d’instructions
Exemple :
if x > 0:
print (" Nombre Positif " )
37
6. Les instructions de contrôle
a. Les instructions conditionnelles
Syntaxe
if condition:
Block d’instructions1
else:
Block d’instructions2
Exemple :
if (a > 0):
print(" Nombre positif")
else:
print(" Nombre négatif ")
38
6. Les instructions de contrôle
a. Les instructions conditionnelles
Syntaxe
if condition:
Block d’instructions1
elif condition2:
Block d’instructions2
else:
Block d’instructions3
39
6. Les instructions de contrôle
a. Les instructions conditionnelles
Exemple : afficher le signe d’un entier (positif/négatif/null).
x=input(" Donnez la valeur de x: ")
if int(x) > 0:
print (" Le nombre est positif ")
elif int(x)<0:
print (" Le nombre est négatif ")
else:
print (" Nombre est nul ") 40
6. Les instructions de contrôle
a. Les instructions conditionnelles
➢ Opérateurs de comparaison
Signification Symbole Symbole Python
Mathématique
Inférieur < <
Supérieur > >
Inférieur ou égal ≤ <=
Supérieur ou égal ≥ >=
Egal = ==
Différent ≠ !=
Reste de la division % 41
Exercices:
1. Ecrire un script qui permet d e saisir un nombre puis
déterminer s’il est pair ou impair.
2. Ecrire un script qui permet à l’utilisateur d’entrer une valeur et
vérifier est ce qu’appartenant à l'intervalle donné [b1,b2]
42
Corrigé
nbre=input(" Entrez un entier : ")
if int(nbre)%2 == 0:
print (" Le nombre est pair ")
else:
print (" Le nombre est impair ")
43
Corrigé
b1= int(input(" Entrez la borne inférieure [b1: "))
b2= int(input(" Entrez la borne supérieure b2]: "))
valeur= int(input(" Entrez la valeur à vérifier: "))
if b1<=valeur<=b2:
print (valeur, " appartenant à l'intervalle donné ")
else:
print (valeur, " ,n'appartenant pas à l'intervalle
donné ")
44
6. Les instructions de contrôle
b. Les instructions répétitives
Le c o n c e p t boucle permet d e répéter
une certaine opération autant d e fois que
nécessaire.
▪ while
▪ for
45
6. Les instructions de contrôle
b. Les instructions répétitives
▪ L’instruction while
Syntaxe:
while condition:
Bloc d’instructions
46
6. Les instructions de contrôle
b. Les instructions répétitives
Exemple:
Afficher les 10 premiers entiers.
print(" Affichage des 10 premiers entiers ")
i = 1 # variable compteur utilisée par la boucle
while i <= 10:
print(i)
i += 1 # Incrémenter i de 1 (i=i+1)
print( " Fin traitement…")
Résultat 47
6. Les instructions de contrôle
b. Les instructions répétitives
Exemple:
Création de la table de multiplication d’un entier.
nb1= input("Donnez un entier : ")
nb2= int(nb1)
print(" Création de la table de multiplication de: " ,nb1)
i = 1 # variable compteur utilisée par la boucle
while i <= 10:
print(i, "*", nb2, "=", (i * nb2))
i += 1 # Incrémenter i de 1 (i=i+1)
print( " Fin traitement…")
48
6. Les instructions de contrôle
b. Les instructions répétitives
▪ L’instruction for
Syntaxe:
for elt in sequence:
Bloc d’instructions
«elt » est une variable créée par «for ».
Elle n’est pas instanciée par le programmeur. Elle prend
successivement c h a c u n e des valeurs figurant dans la séquence
parcourue.
49
6. Les instructions de contrôle
b. Les instructions répétitives
▪ L’instruction for
Exemple:
dpt = "Département Génie Industriel"
for lettre in dpt:
print(lettre)
print(" Fin traitement…") 50
6. Les instructions de contrôle
b. Les instructions répétitives
Résultat
51
6. Les instructions de contrôle
b. Les instructions répétitives
L’instruction range() : génère une liste d e nombres.
Syntaxe :
range([debut], arrêt [, pas])
Exemple
# Un seul paramètre
for i in range(5):
print(i) Résultat =0 1 2 3 4
# Deux paramètres
for i in range(3, 6):
print(i) Résultat =3 4 5
# Trois paramètres
for i in range(4, 10, 2):
print(i) Résultat =4 6 8 46
52
Exercice 1:
Ecrire un programme python qui permet d’afficher les 10
premiers chiffres.
Corrigé:
liste = 10
for chiffre in range(liste):
print(chiffre)
Print " Fin traitement…"
53
Résultat en sortie:
54
Exercice 2:
Écrire un programme qui affiche les 10 premiers multiples d e 8
Corrigé:
for i in range(10):
print(" "+str(i)+"*8 = "+str(i*8))
55
Résultat en sortie:
56
7. Importation des librairies
Python offre d e très nombreuses librairies d e fonctions
pré-définies pour réaliser des tâches.
L’importation de la librairie se fait à travers l’instruction
import nom_librairie
Pour importer une fonction précise de la librairie
from nom_librairie import nom_fonction
57
Exercice:
Calculer la racine carrée d’un entier a v e c la fonction
sqrt().
Importer les librairies 58
Corrigé
Résultat
59
7. Importation des librairies
Math:
from math import ∗ (importer tout) ou import math (faire précéder les
fonctions du module par «math.»
60
Exercice:
1. Ecrire un programme python qui demande un nombre x à
l’utilisateur puis Calculer leur factoriel
2. Ecrire un programme python qui demande un nombre x à
l’utilisateur puis Calculer leur exponentiel
61
Corrigé
import math
nb= int(input("Donnez un entier : "))
fact= [Link](nb)
print("Factoriel =",fact)
Résultat
62
7. Importantes des librairies
RANDOM
from random import ∗ (importer tout) ou import random (faire
alors précéder chaque fonction du module par « random. »
63
Exemple:
actions = ["Attaque", "Défense", "Fuite"]
action = choice(actions)
print("Action choisie :",action)
Résultat:
64
7. Importantes des librairies
Matplolib:
La librairie Matplotlib en Python est un outil puissant pour créer des
visualisations de données sous forme de graphiques et de plots. C'est une des
bibliothèques les plus utilisées en science des données, en analyse statistique,
et en machine learning.
Importation de base :
La sous-bibliothèque principale de
Matplotlib utilisée pour les tracés est
pyplot, généralement importée sous
l'alias plt.
import [Link] as plt
65
Exemple 1 : Graphique de lignes
66
Exemple 2: Graphique en barres
67
7. Importantes des librairies
Sympy
Calcul symbolique avec Sympy Lors de la manipulation de modèles mathématiques ou
physiques, on a souvent besoin de faire des calculs analytiques sur des variables
symboliques (représentant des coordonnées, la température, le temps, etc.).
Syntaxe:
from sympy import ∗ (importer tout)
x=Symbol("x") si nous voulons utiliser le symbole x en calcul formel
Exemples:
68
7. Importantes des librairies
Exemples:
69
8. Définition des fonctions
Une fonction est un bloc de code conçu pour effectuer une tâche spécifique.
Lorsqu'une fonction effectue un calcul ou une opération et que tu souhaites
récupérer un résultat, tu peux utiliser l'instruction return pour renvoyer cette
valeur à l'endroit où la fonction a été appelée.
def nom_fonction(liste d e paramètres):
…
b l o c d'instructions d e la fonction
…
Entrée Sortie
Fonction
70
Une fonction transforme généralement une entrée en sortie
8. Définition des fonctions
➢ Fonction sans paramètres
71
8. Définition des fonctions
➢ Fonction avec paramètres
72
Résultat
73
8. Définition des fonctions
Fonction avec retour de résultat
Une fonction (au sens strict) doit renvoyer un résultat à la fin d e ses
traitements.
La dernière ligne d e la définition d e la fonction doit être
l’instruction return (return : définit c e que doit être la valeur
renvoyée par la fonction).
Syntaxe :
return resultat
# « resultat » peut être une variable ou une expression
74
8. Définition des fonctions
Syntaxe:
def nom_fonction(liste d e paramètres):
…
b l o c d'instructions
…
return
Syntaxe de l’appel de la fonction:
Variable_result =nom_fonction(liste_parametres)
75
8. Définition des fonctions
Exemple 1:
76
8. Définition des fonctions
Exemple 2:
77