Université Alioune Diop de Bambey UFR SATIC / L2 MPI & PC
L’excellence est ma constance, l’éthique ma vertu Python
Partie I : PROGRAMMATION PROCÉDURALE (Aide-mémoire)
1 Les bases du langage
1.1 Commentaires
# j u s q u ' à l a f i n de l a l i g n e Sur p l u s i e u r s l i g n e s
' ' ' Commentaire
sur p l u s i e u r s l i g n e s '''
1.2 Les opérateurs
1.2.1 Opérateurs arithmétiques
Opération Opérateur Commentaire
Addition a+b a et b peuvent être des réels ou des entiers
Soustraction a−b a et b peuvent être des réels ou des entiers
Multiplication a∗b a et b peuvent être des réels ou des entiers
Division a/b a et b peuvent être des réels ou des entiers. Le résultat
est toujours un réel
Division entière a//b a et b sont entiers ou réels. Le résultat est la partie
entière inférieure ou égale au quotient.
Reste ou modulo a%b a et b doivent être entiers. C’est le reste de la division
entière
Puissance a ∗ ∗b a et b sont réels ou entiers
Valeur absolue abs(a) Valeur absolue de a
Arrondir round(a) Arrondit le réel, a, au nombre entier le plus proche. Le
type du résultat est toujours un entier
Conversion vers réel f loat(a) Convertit la valeur numérique de a en un réel.
Conversion vers entier int(a) Convertit la valeur numérique de a en un entier. La par-
tie décimale est tronquée, et non arrondie
1.2.2 Opérateurs de comparaison
< # Plus p e t i t
> # Plus grand
<= # Plus p e t i t ou é g a l
>= # Plus grand ou é g a l
= = # Egal
!= # Diff é rent
1.2.3 Opérateurs logiques
a and b # renvoie vrai s i a et b sont v r a i s
a or b # r e n v o i e v r a i s i a ou b e s t v r a i ( ou l e s deux )
not a # r e n v o i e v r a i s i a n ' e s t pas v r a i
1.2.4 Opérateur d’affectation
M. GOMIS 24 janvier 2021
Université Alioune Diop de Bambey UFR SATIC / L2 MPI & PC
L’excellence est ma constance, l’éthique ma vertu Python
variable = valeur # Affectation simple
variable1 = variable2 = valeur # Affectation multiple
variable1 , variable2 = valeur1 , valeur2 # A f f e c t a t i o n s p a r a l l è l e s
1.2.5 Opérateurs spéciaux
Identit é :
is # renvoie t r u e s i l e s deux op é r a n d e s s o n t i d e n t i q u e s
i s not # r e n v o i e t r u e s i l e s deux op é r a n d e s s o n t d i f f é r e n t s
Appartenance :
in # renvoie t r u e s i l a v a l e u r e s t t r o u v é e dans l a s é quence
not i n # r e n v o i e t r u e s i l a v a l e u r n ' e s t pas t r o u v é e dans l a s é←-
quence
1.3 Les variables
Elles permettent de stocker les r é sultats des op é rations ( m é moire )
variable = 3∗3 #= 9
variable += 2 # = 11
variable −= 5 #= 6
# On a a u s s i : ∗= /= //= %= ∗∗= . . .
Cha î ne de caract è res ( texte ) : " . . . " ou ' . . . ' ,
" " " t e x t e multi −l i g n e " " "
1.4 Types élémentaires
type ( V ) # r e n v o i e l e type de l a v a r i a b l e V
int , float , s t r . . . # Types é l é m e n t a i r e s
p r i n t ( "V = " , variable , " ! " ) # Affichage
variable = i n p u t ( " Taper une c h a i n e " ) # lecture
help ( " fonction " ) # Aide . Par exemple h e l p ( " p r i n t " ) )
M. GOMIS 24 janvier 2021
Université Alioune Diop de Bambey UFR SATIC / L2 MPI & PC
L’excellence est ma constance, l’éthique ma vertu Python
1.5 Chaines de caractères
Opération Opérateur Commentaire
Indexation ch[i] Donne le iième caractère de la chaîne ch. L’indice
est basé sur zéro, donc ch[0] est le premier carac-
tère
Concaténation ch + c Juxtaposition des chaines ch et c
Longueur len(ch) Nombre de caractères dans ch
Valeur ordinale ord(c) Valeur ordinale d’un caractère c. La valeur ordi-
nale est le code ASCII du caractère
Valeur du caractère chr(x) Caractère qui correspond à la valeur ASCII de x
Conversion en chaine str(x) convertit x en chaines de caractères. La valeur de
x peut être un int, un float ou un autre type de
valeur.
Conversion vers entier int(ch) Donne la valeur entière contenue dans la chaîne
ch. Si ch ne contient pas de nombre entier, une
erreur se produira.
Conversion vers réel f loat(ch) Donne la valeur réelle contenue dans la chaîne
ch. Si ch ne contient pas de réel, une erreur se
produira.
1.5.1 Conversion de type
Si a est un f l o a t alors c = i n t ( a ) est un entier . . .
Lire un i n t : variable = i n t ( i n p u t ( " Taper un e n t i e r " ) )
Lire un f l o a t : variable = f l o a t ( i n p u t ( " Taper un e n t i e r " ) )
1.6 Formatage avec format()
x = 3.141592653589793
y = 10.11111
p r i n t ( "Ré e l s { : 5 . 3 f } e t { : 4 . 2 f } " . format ( x , y ) )
p r i n t ( " V o i c i un r é e l "+format ( x ) )
# c o n v e r s i o n de x en c h a i n e de c a r a c t è r e s
# concat é nation
# puis affichage
M. GOMIS 24 janvier 2021
Université Alioune Diop de Bambey UFR SATIC / L2 MPI & PC
L’excellence est ma constance, l’éthique ma vertu Python
1.7 Indicateurs de format
Type Indicateurs Commentaires
int %wd Place un nombre entier dans un champ de largeur w si spécifié.
%2d placerait un entier dans un champ de largeur 2. w peut
être omis.
int %wx Formatez l’entier en hexadécimal. Mettez-le dans un champ de
largeur w si cela est spécifié. w peut être omis.
int %wo Formatez l’entier en octal. Mettez-le dans un champ de largeur
w si spécifié. w peut être omis.
float %[Link] Formatez un nombre à virgule flottante avec une largeur to-
tale w (y compris la virgule) et avec des chiffres d après la
virgule. L’affichage du nombre entier, y compris les chiffres d,
a la priorité sur l’affichage dans un champ de w ; les caractères
w ne doivent pas être suffisamment grands. w et d peuvent être
omis.
float %[Link] Formater un nombre à virgule flottante en utilisant la nota-
tion scientifique avec d chiffres de précision et w de largeur de
champ. La notation scientifique utilise un exposant de 10 pour
déplacer le point décimal de sorte qu’un seul chiffre apparaisse
à gauche de la virgule. w et d peuvent être omis.
str %ws Placez une chaîne dans un champ de largeur w. w peut être
omis.
%% Inclure un signe % dans la chaîne formatée.
Exemple
a , b = 2 , 3 # affectations parall è les
c = a ∗ b
p r i n t ( " %1.2 f ∗ %1.2 f = %1.4 f " % ( a , b , c ) )
p r i n t ( "%d%% de b é n é f i c e " % c ) # u t i l i s a t i o n de %%
M. GOMIS 24 janvier 2021
Université Alioune Diop de Bambey UFR SATIC / L2 MPI & PC
L’excellence est ma constance, l’éthique ma vertu Python
2 Les instructions de contrôle
2.1 Tests
2.1.1 Test sans la "partie sinon"
"Si ... alors” =⇒ if ...
Exemple :
i f age < 1 8 :
p r i n t ( " Trop j e u n e ! " )
2.1.2 Test avec la "partie sinon"
Exemple :
i f age < 1 8 :
p r i n t ( " Trop j e u n e ! " )
else :
p r i n t ( " ok " )
2.1.3 Bloc d’instructions
L’indentation/ décalage est obligatoire pour délimiter un bloc d’instructions
i f age < 1 8 :
code = 0
p r i n t ( " Trop j e u n e " )
else :
M. GOMIS 24 janvier 2021
Université Alioune Diop de Bambey UFR SATIC / L2 MPI & PC
L’excellence est ma constance, l’éthique ma vertu Python
code = 1
p r i n t ( " ok " )
2.1.4 Tests imbriqués
"Sinon si ... alors" =⇒ elif
i f a < 18:
p r i n t ( " Trop j e u n e ! " )
e l i f a>=60:
p r i n t ( " Trop v i e u x ! " )
else :
p r i n t ( "OK, vous ê t e s é l i g i b l e " )
2.2 Gestion des exceptions
ch = i n p u t ( " Donner une c h a i n e de c a r a c t è r e s : " )
try :
p r i n t ( " La c o n v e r s i o n de l a c h a i n e en e n t i e r donne : " , i n t ( ch ) )
except :
p r i n t ( " I m p o s s i b l e de c o n v e r t i r l a c h a i n e " , ch )
M. GOMIS 24 janvier 2021
Université Alioune Diop de Bambey UFR SATIC / L2 MPI & PC
L’excellence est ma constance, l’éthique ma vertu Python
2.3 Boucles
2.3.1 Boucle déterministe
"Pour chacun ... dans ... faire” =⇒ for ... in
"Passer au suivant” =⇒ continue
"Arrêter la boucle” =⇒ break
Exemple 1 :
f o r lettre i n " c h a i n e " :
i f lettre==' i ' :
continue
p r i n t ( lettre )
Exemple 2 :
f o r chiffre i n r a n g e ( 1 , 5 ) : # range ( s t a r t , stop , step )
p r i n t ( chiffre )
M. GOMIS 24 janvier 2021
Université Alioune Diop de Bambey UFR SATIC / L2 MPI & PC
L’excellence est ma constance, l’éthique ma vertu Python
i f chiffre == 3 :
break
2.3.2 Boucle conditionnelle
"Tant que ... faire” =⇒ while
Exemple :
a = 0
while a < 10:
print (a)
a+=1
3 Les fonctions
3.1 Définition
d e f nomFonction ( param1 , param2 , . . . , paramN ) :
" " " Documentation
b l a b l a b l a " " " # contenu
r e t u r n expression
3.2 Appel de fonction
d e f som ( a , b , c ) :
r e t u r n a+b+c
d e f modifier ( a , b , c ) :
p r i n t ( a , " d e v i e n t " , a+1)
p r i n t ( b , " d e v i e n t " , b+5)
p r i n t ( c , " d e v i e n t " , c+10)
r = som ( 2 , 1 5 , 1 1 ) # Appel de l a f o n c t i o n ayant un r e t u r n
print (r)
modifier ( 2 , 1 5 , 1 1 ) # Appel de l a f o n c t i o n ayant un r e t u r n
3.3 Paramètres avec valeurs par défaut
M. GOMIS 24 janvier 2021
Université Alioune Diop de Bambey UFR SATIC / L2 MPI & PC
L’excellence est ma constance, l’éthique ma vertu Python
d e f somme ( a , b=10 , c=0, d=0) :
r e t u r n a+b+c+d
r1 = somme ( 1 5 , 1 2 , 2 3 , 1 9 )
r2 = somme ( 1 5 , 1 2 , 2 3 )
r3 = somme ( 1 5 , 1 2 )
r4 = somme ( 1 5 ) # un s e u l argument , t o u s l e s s o n t a u t r e s remplac é s ←-
par l e u r s v a l e u r s par d é f a u t
3.4 Import
import permet de r é cup é rer des fonctions d é jà é crites
Exemple :
import math
racine = math . sqrt ( 1 6 )
from math import sqrt
racine = sqrt ( 1 6 )
from math import ∗
racine = sqrt ( 1 6 )
import math as mat
racine = mat . sqrt ( 1 6 )
NB : Ce support est un résumé, votre présence au cours magistral est fortement recommandée
M. GOMIS 24 janvier 2021