Académique Documents
Professionnel Documents
Culture Documents
n’a rien !
Proverbe Français
Python
Le language….
Part II
S.DARRAGI
S.Darragi
Le langage Python: L’affectation
Une affectation crée un 2nom (identificateur,
variable) qui référence un objet (les identifiants
au format __nom__ sont réservés à
l’interpréteur Python)
C’est l’objet qui porte le type et les données
(valeur, pour un objet numérique).
Un même objet peut être référencé sous
plusieurs noms (alias). x
>>>x=5
>>>y=5
y
5
505626168
>>> x,id(x),type(x),
(5, 505626168, <class 'int'>)
>>>y,id(y),type(y) z
(5, 505626168, <class 'int'>)
S.Darragi
Le Langage ….
L’affectation (suite)
S.Darragi
Le Langage ….
L’affectation (suite)
4
Affectation multiples !!
Initialisation multiples !
S.Darragi
Le Langage ….
L’affectation (suite)
5
S.Darragi
Le Langage ….
L’affectation (suite)
6
>>> x,y=45,23
>>> id(x),id(y)
(505626808, 505626456)
>>> x,y=y,x
>>> x,y
(23, 45)
>>> id(x),id(y)
(505626456, 505626808)
>>>
S.Darragi
Le Langage ….
S.Darragi
Le Langage ….
S.Darragi
Le Langage ….
S.Darragi
Le Langage ….
Les structures conditionnelles
Applications
12
S.Darragi
Application 2 Résolution d’équation de 2nd degré
13
S.Darragi
Les structures itératives
Les non conditionnelles : Boucle For
14
Syntaxe Une boucle for permet de
For i in range(a): répéter un ensemble
instructions
d’instruction un certain
For i in range(a,b): nombre de fois connu à
instructions l’avance !
For i in range(a,b,c):
instructions
For i in iter:
instructions
Le quatrième cas est un parcours par élément que nous pourrons effectuer
avec les itérables tel que les listes, les tuples, les chaînes de caractères ou
même les fichiers…
S.Darragi
Exemple:
A 15 B
S.Darragi
L’instruction for …. in
16
L’instruction for in : permet d’itérer sur le contenu d’une liste,
d’un tuple, les caractères d’une chaîne ou même un fichier …
>>>L=list(range(5))
>>>L
[0,1,2,3,4]
>>>L1=[]
>>>for k in L:
L1.append(k**2)
L1= =[0, 1, 4, 9, 16]
>>>ch=”azerty”
>>>ch1=''
>>>for c in ch:
ch1=ch1+c*2 aazzeerrttyy
S.Darragi
Construction de listes par compréhension !!
17
S.Darragi
Les structures itératives
conditionnelles : Boucle tant que
19
Syntaxe
while condition :
instructions
Exemple
i=1
while i<=5: La boucle tant que permet
print(i) d’exécuter un ensemble
i+=1 d’instructions tant que la
1 condition est vraie
2
3
4
5
S.Darragi
Deuxième forme de la boucle while
20
while True :
instructions
if instruction :
break
Exemple
while True :
x=int(input(‘donner un entier >0’))
if x>0:
break
S.Darragi
Application Jeu de devinette
21
S.Darragi
Programme devinette version1
22
S.Darragi
Application 2
23
S.Darragi
24
S.Darragi
Les sous programmes
25
Un programme sous Python se déclare à l’aide de l’instruction
def :
Sytnaxe
def nom_programme(liste_paramètres d’entrée p1,p2…):
instructions
return(résultat)
Exemple
def saisi():
""" cette fonction permet de saisir un entier >0
et retourne cet entier
>>>N=saisi()
"""
while True :
x=int(input("saisir un entier >0"))
if x>0:
break
return(x)
S.Darragi
Les sous programmes (suite)
26
>>> x=saisi()
saisir un entier >0 -5
saisir un entier >0 45
>>> help(saisi)
Help on function saisi in module __main__:
saisi()
cette fonction permet de saisir un
entier >0
et retourne cet entier
S.Darragi
Les sous programmes: Passage d’arguments
27
Les arguments non modifiables miment le
comportement du passage par valeur, mais ne
sont pas recopié (gain de temps ), c’est-à-dire
un argument non mutable modifié au sein du
programme n’aura aucune incidence sur le
paramètre effectif (les objets de types
élémentaires et les itérables non mutables tel
que le tuples et les chaînes )
S.Darragi
Les sous programmes: Passage d’arguments
28
S.Darragi
Les sous programmes -exemples
29
S.Darragi
Les sous programmes -
Passage de paramètres: exemples
30
S.Darragi
Les sous programmes -
Passage de paramètres: exemples
31
S.Darragi
Les sous programmes -
Passage de paramètres par
32
valeur: exemples
S.Darragi
Les sous programmes -
Passage de paramètres: Exemples
33
S.Darragi
Les sous programmes -
Passage de paramètres par référence :
Exemple
34
S.Darragi
Les sous programmes -
Passage de paramètres
35
par défaut:
S.Darragi
Variables locales vs variables globales
36
S.Darragi
Variables locales vs variables globales
37
S.Darragi
Fonction lambda
38
Lorsqu’il s’agit d’expression mathématique Python offre
un deuxième outil relatif à la déclaration de fonction
définie par une expression simple, cet outil est la
fonction lambda
f=lambda x:x**2
X=list(range(11))
Y=[]
for e in X:
Y.append(f(e))
print(X,'\n',Y)
>>>
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
[0, 1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
S.Darragi
Fonction map et filter
39
map
>>>L=[i for i in range(20)]
>>> f=lambda x:2*x
>>> list(map(f,L))
[0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30,
32, 34, 36, 38]
filter
>>> L=[i for i in range(20)]
>>> g=lambda x:x>10
>>> list(filter(g,L))
[11, 12, 13, 14, 15, 16, 17, 18, 19]
S.Darragi
Gestion des erreurs
la clause TRY….EXCEPT
40
try:
instruction_à_faire
except <<type_exception_optionnel>>
instruction_à_exécuter_si_une_exception_se_déclenche
S.Darragi
Gestion des erreurs
la clause TRY….EXCEPT
41
En cas d’exception, si son type correspond à
l’exception donnée après le mot-clé except, la
clause except est exécutée, puis l’exécution
reprend après l’instruction try.
–Si une exception se produit qui ne
correspond pas à l’exception donnée dans la
clause except, elle est renvoyée aux
instructions try extérieures, s’il n’y a pas de
prise en charge, il s’agit d’une exception non
gérée et l’exécution est arrêtée avec un
message, comme vu précédemment.
S.Darragi
Gestion des erreurs
la clause TRY….EXCEPT
42
Exemple 1
def saisi_controlée():
x=-1
while x<0:
try :
x=int(input("donner un entier"))
if x>0:
break
except:
print("erreur de saisie, saisissez un entier SVP")
x=saisi_controlée()
S.Darragi
Try… except
Exemple..
43
S.Darragi
44
S.Darragi