Académique Documents
Professionnel Documents
Culture Documents
1
Python
Un petit tour d’horizon
Réalisé par :
Mme S.Darragi
S.Darragi
2
Plan
• Présentation générale
• Historique du langage
• Classement
• EDI
• Installation
• Mode intératif
• Mode Script
• Utilisation de l’aide
• Import de modules
S.Darragi
Historique du langage
3
S.Darragi
Historique du langage (suite)
4
Principales versions officielles parues :
• Python 1.0 – Janvier 1994
• Python 2.0 – Octobre 2000
• Python 2.1, 2.2 , 2001, Python 2.3 - 2003
• Python 2.4 – Novembre 2004,
• Python 2.5 – Septembre 2006
• Python 2.6 - Octobre 2008, Python 2.7 – Juillet 2010
Révolution du langage python et apparition de la version 3
• Python 3.0 - Décembre, 2008
• Python 3.1 – Juin 2009
• Python 3.2 -Février 2011
• Python 3.3 Septembre 2012
• Python 3.4 - Mars , 2014
• Python 3.5 Septembre 2015
• Python 3.6.1 - Décembre 2016
• Python 3.7 – Janvier 2018
• Python 3.8 – Octobre 2019
• Python 3.9. 0, October 2020.
S.Darragi
Python - Classement …
• Classé:
5
Langage de
Mar 2020 Mar 2019 Programmation Ratings Change
1 1 Java 17.78% +2.90%
2 2 C 16.33% +3.03%
3 3 Python 10.11% +1.85%
4 4 C++ 6.79% -1.34%
5 6 C# 5.32% +2.05%
6 5 Visual Basic 5.26% -1.17%
.NET
https://spectrum.ieee.org/computing/software/the-2017-top-
programming-languages
S.Darragi
Classement des
langages de programmation selon IEEE (2019)
8
La sélection initiale de cette année comprenait près de 300 langages de programmation, mais le
classement final n’en a retenu que 52. Le tableau suivant donne le top 10 du classement général des
langages en 2019 :
https://programmation.develo
ppez.com/actu/276292/Meille
urs-langages-en-2019-selon-l-
IEEE-Python-leader-pour-la-
troisieme-annee-consecutive-
il-s-impose-dans-tous-les-
domaines-dans-lesquels-il-est-
utilise-du-developpement-
web-a-l-embarque/
S.Darragi
langages de programmation selon IEEE
(2020)
9
S.Darragi
Pourquoi Python? Caractéristiques
10
S.Darragi - IPEST -
S.Darragi
Caractéristiques (suite)
11
Python est un Langage de haut niveau (faire
beaucoup avec peu de code, un programme python
est 3 à 5 fois moins cours qu’un programme C)
S.Darragi
Domaines d’applications
14
S.Darragi
Installation
16
S.Darragi
IDLE (suite)
18
S.Darragi
19
S.Darragi
Installation Python Version 3.x
Une fois installé Python peut être utilisé en deux modes mode
intéractif ou en mode script 20
Image extraite du cours de Jean-Luc Charles, Eric Ducasse, Art et Métiers Paris Tech
S.Darragi
Python IDLE Mode Intéractif
21
S.Darragi
Mode interactif
Les instructions tapées sont exécutées directement par l’interpréteur
python, on l ’appelle aussi le mode calculatrice
22
!
S.Darragi
Mode script
23
Une nouvelle fenêtre s’ouvre, vous écrivez votre code Python enregistrer le tout
dans un fichier d’extension.py
S.Darragi
Mode script
24
Exécution
S.Darragi
Autre Environnement Python
Pycharm
25
S.Darragi
Pycharm - Intallation
26
Etape II
Etape I
Etape III
Etape IV
S.Darragi
Pycharm - Intallation
27
S.Darragi
Environnement Pycharm
28
S.Darragi
Environnement Pyzo
29
S.Darragi
Utilisation de l’aide
30
class int(object)
| int(x=0) -> integer
| int(x, base=10) -> integer
….
Methods defined here:
|
| __abs__(...)
| x.__abs__() <==> abs(x)
|
| __add__(...)
| x.__add__(y) <==> x+y
|
| __and__(...)
| x.__and__(y) <==> x&y
|
| __bool__(...)
| x.__bool__() <==> x != 0
S.Darragi
Modules et Import
31
S.Darragi
Import de modules
32
Trois manières d’import de modules (avantages/inconvénients)
1 ère manière
>>>import math
>>>dir(math)
['__doc__', '__name__', '__package__', 'acos', 'acosh', 'asin', 'asinh',
'atan', 'atan2', 'atanh', 'ceil', 'copysign', 'cos',………, 'pi', 'pow',
'radians', 'sin', 'sinh', 'sqrt', 'tan', 'tanh', 'trunc']
>>> math.ceil(7.8989) #partie entière supérieur
8
>>> math.floor(7.8989) #partie entière inférieur
7
>>>help(math.ceil)
Help on built-in function ceil in module math:
ceil(...)
ceil(x)
Return the ceiling of x as an int.
This is the smallest integral value >= x.
S.Darragi
Import de modules
33
2eme manière Utilisation d’un alias
>>>import math as m
>>>dir(m)
['__doc__', '__name__', '__package__', 'acos',
'acosh', 'asin', 'asinh', 'atan', 'atan2', 'atanh',
'ceil', 'copysign', 'cos',………, 'pi', 'pow',
'radians', 'sin', 'sinh', 'sqrt', 'tan', 'tanh',
'trunc']
>>> m.sqrt(2)
1.4142135623730951
>>> m.tan(m.pi)
-1.2246467991473532e-16
S.Darragi
Import de modules
34
3eme Manière : Importation de toutes les fonctions d’un
module
>>>from math import *
>>>dir(math)
Erreur
Traceback (most recent call last):
File "<pyshell#1>", line 1, in <module>
dir(math)
NameError: name 'math' is not defined
Mais les fonctions du module sont directement accessibles
>>>sqrt(2)
1.4142135623730951
>>> help(abs)
Help on built-in function abs in module builtins:
abs(...)
abs(number) -> number
S.Darragi
Import de modules (suite)
35
La troisième manière représente l’avantage
d’accéder directement aux fonctions mais
représente également l’inconvénient
d’encombrement de l’espace de noms réservé et la
possibilité de conflit entre deux fonctions ayant le
même identificateur provenant de deux modules
différents !!!
Exemple
>>>from numpy import *
>>> from math import *
Les deux contiennent la fonction sqrt , l’une définie
pour les réels l’autre sur les tableaux! Laquelle
sera utilisée ????
S.Darragi
Modules courants
36
sys: passage d’arguments, gestion de l’entrée/sortie standard
etc...
os: dialogue avec le système d’exploitation.
math: fonctions et constantes mathématiques de base (sin, cos,
exp, pi...).
random : génération de nombres aléatoires.
time : permet d’accéder aux fonctions gérant le temps.
urllib : permet de récupérer des données sur internet depuis
python.
re : gestion des expressions régulières.
numpy, scipy: modules incontournables du calcul scientifique
Matplotlib : traçage de courbes
Tkinter : interface graphique
S.Darragi
37
S.Darragi