Académique Documents
Professionnel Documents
Culture Documents
2
Python, c’est quoi?
• Langage de programmation comme : C, C++, C#, Java, …
• Créé par Guido van Rossum (Google, Dropbox)
• Influencé par les langages : ABC, C & Modula-3
• Open source (gratuit) même pour des projets commerciaux
• Géré par la Python Software Foundation : https://www.python.org/
• Plusieurs implémentations existent : CPython, IronPython, Jython, …
• Première version (0.9.0) en 1991
• Version actuelle 3.7.2 (Février 2019)
• Principales version: Python2 & Python3
3
Python, c’est quoi ? (suite)
• Caractéristiques du langage (avantages et inconvénients):
➢Portable (dit aussi Multiplateforme): Windows, Linux/UNIX, Macintosh OS, ...
➢Langage interprété (comme MATLAB)
➢Pas de compilation (explicite)
➢Pas de typage pour les variables (typage dynamique implicite)
➢Syntaxe simple et légère → facilite son apprentissage
➢Syntaxe basée sur l’indentation
➢Pas besoin d’un IDE (Environnement de développement intégré)
L’interpréteur suffit largement
➢Lent contrairement au C ou C++
➢Langage du calcul scientifique
4
Python, c’est quoi ? (suite)
• Pour commencer: Lancer l’interpréteur par défaut →Anaconda Prompt
Lancer l’interpréteur en
tapant « python »
5
Eléments du langage : Variables
• Pas de déclaration (explicite)
• Types de données simples :
Type de données Exemples
Entier -345 0 2019 345678989743221
Réel 5.78 -.785 -45.89 5.89e-12
Complexe 43.6 + 1.4j -7.89j
Booléen True False TRUE FALSE true false
Chaine de caractères "Bonjour l’ENSB" ‘Hello World!’
7
Eléments du langage: Opérations
Opération Opérateur Exemples Résultats
Multiplication * 5 * 10 50
"Bonjour " * 2 "Bonjour Bonjour "
Addition + 5 + 10 15
"ABC" + "DEF" " ABCDEF"
Soustraction - 5 - 10 -5
Division / 5 / 10 0.5
Division entière // 5 // 2 2
Modulo % 5%2 1
Puissance ** 5 ** 3 125
8
Eléments du langage: Affectation
10
Peut aussi être utilisée pour afficher un message à l’écran
Eléments du langage: Chaines de caractères
• Chaine de caractères = ensemble ordonné de caractères
11
Eléments du langage: Chaines de caractères
• Opérations sur les chaines de caractères:
Récupérer la taille d’une chaine:
12
Eléments du langage: Chaines de caractères
• Opérations sur les chaines de caractères:
Pour les autres fonctions → il suffit d’utiliser la commande: help(str)
13
Eléments du langage: Listes
• Listes = Tableaux (dynamiques)
✓ Comportant plusieurs valeurs ordonnées
✓ La création d’une liste se fait à l’aide des crochets [ ]
✓ Accès à travers un indice; qui commence à partir de 0 et se termine à (taille -1)
✓ Accès au dernier élément avec l’indice -1
✓ Initialisation :
✓ Accès :
Dépassement
de la taille !!!
15
Eléments du langage: Listes (suite)
• Fonctions associées :
✓ Concaténation (+) ou duplication (*) :
16
Eléments du langage: Listes (suite)
Position
• Fonctions associées : dans la liste
✓ Ajout d’un élément à une liste (deux façons):
La valeur de l’élément à
ajouter
OU
17
Eléments du langage: Listes (suite)
• Fonctions associées :
✓ Autres fonctions: la commande help(list)
18
Eléments du langage: Tuples
• Tuples = Tableaux (statiques)
✓ Comportant plusieurs valeurs ordonnées non modifiables
✓ La création d’un tuple se fait à l’aide des parenthèses ( )
✓ Accès à travers un indice; qui commence à partir de 0 et se termine à (taille -1)
✓ Accès au dernier élément avec l’indice -1
✓ Pas de possibilité d’ajout ou de suppression d’éléments
✓ Initialisation :
✓Accès et manipulations :
19
Eléments du langage: Dictionnaires
• Dictionnaire = Structure de données non ordonnée → Pas d’indice
✓ La création d’un dictionnaire se fait à laide des accolades { }
✓ Chaque élément est composé d’une clé et d’une valeur
✓ Accès aux valeurs du dictionnaire à travers des clés
✓ Les clés peuvent être de n’importe quel type (entier, réel, chaîne de caractères)
✓ Peut contenir des éléments de différents types
✓ Initialisation :
✓ Accès :
20
Eléments du langage: Dictionnaires (suite)
• Fonctions associées :
• Ajouter un élément à un dictionnaire :
21
Eléments du langage: Dictionnaires (suite)
• Fonctions associées :
✓ Autres fonctions: la commande help(dict)
22
Eléments du langage: Structures de contrôle
• Notion d’indentation:
Indentation:
False
Ajout / Si « condition » :
suppression de
tabulations
pour indiquer
True 1 Instruction 1
le début / la fin Bloc
d’un bloc
Indentation
2 Instruction 2 d’instructions
d’instructions 3 Instruction 3
Instruction suivante
4
23
Eléments du langage: Structure de contrôle (suite)
• Opérateurs de comparaison :
✓ condition = comparaison entre deux valeurs
Comparaison Syntaxe Exemple Résultat
Egalité == 1 == 1 True
Différence != 1 != 2 True
Supérieur > 1>2 False
strictement
Supérieur ou égal >= 1 >= 2 False
Inférieur strictement < 1<2 True
Inférieur ou égal <= 1 <= 2 True
✓ Opérateurs logiques pour composer des conditions complexes : and, or, not et ()
24
Eléments du langage: Structure de contrôle (suite)
• Structure conditionnelle ou alternative : if, elif, else
Mettre une
condition avec
25
Eléments du langage: Structure de contrôle (suite)
• Structure répétitive ou itérative :
False
Tant que « condition » :
True 1 Instruction 1
2 Instruction 2
3 Instruction 3
Instruction suivante
26
Eléments du langage: Structure de contrôle (suite)
• Structure répétitive ou itérative :
✓ La boucle while :
Bloc
d’instructions
à répéter
Facultatif
Bloc
d’instructions
exécuté une
seule fois
après la fin de
la boucle
27
Eléments du langage: Structure de contrôle (suite)
• Structure répétitive ou itérative : Intervalle : 0 → 4 ([0, 5[)
(5 non inclus)
✓ La boucle for :
Bloc
d’instructions
à répéter
Facultatif
Bloc OU
d’instructions
exécuté une
seule fois
après la fin de
la boucle
28
Eléments du langage: Fonctions
• Fonction = sous-programme
• Mathématiquement parlant :
Valeur retournée après −𝑥, 𝑥<0 Traitement (calcul)
𝑦= 𝑓 𝑥 =ቊ à effectuer
traitement (sortie) 𝑥, 𝑥≥0
Nom de la fonction
Paramètre ou argument (entrée)
• Règles pour le nommage d’une fonction:
➢Il doit commencer par une lettre
➢Pas d’espace → utiliser le « _ »
➢Pas de caractères spéciaux: # . , ( ) [ ] { } + -
➢MAJUSCULE ≠ minuscule (exemple : Fonction ≠ fonction)
➢Eviter d’utiliser les mots clés du langage
29
Eléments du langage: Fonctions (suite)
• Définition d’une fonction :
Paramètres de la fonction (données en entrée)
Définition
d’une fonction
en utilisant le
mot-clé
Bloc d’instructions :
Indentation traitement à faire
dans la fonction
Déclaration
Appel
31
Eléments du langage: Fonctions (suite)
• Une fonction peut renvoyer une valeur; en utilisant le mot-clé return :
Fonction sans retour de résultat Fonction avec retour de résultat
Déclaration
Appel et
Résultat
32
Eléments du langage: Fonctions (suite)
• Portée des variables :
Local LGI ?
34
Eléments du langage: Modules
• Module = Programme Python = Ensemble de définitions de classes,
fonctions et d’instructions …
✓ Fichier sauvegardé sous l’extension « .py »
✓ Avant de pouvoir l’utiliser, il faut l’importer!!!
✓ Exemple:
35
Eléments du langage: Modules (suite)
• Pour importer tout le module : import nom_module
• Exemple :
36
Eléments du langage: Modules (suite)
• Comment rendre un module exécutable?
37
Eléments du langage: Modules (suite)
• Que fait la commande dir() ?
38
Eléments du langage: Bibliothèque standard
• Bibliothèque = Ensemble de modules
• Fonctions mathématiques : math
39
Eléments du langage: Bibliothèque standard (suite)
40
Petit exercice
41