Vous êtes sur la page 1sur 30

Cours de

Programmation Python
Enseignant Responsable:
Maroua Abdelhafidh

Auditoire: LCE 2
2020-2021
Chapitre 1:
Introduction
Programmer?

 Programmer commence
d’abord par un algorithme et
finit par un code (écrit dans un
langage de programmation ) qui
est exécuté par la suite par
l’ordinateur pour fournir un
résultat.

3
Langages de Programmation
 Pour l’Université, les entreprises et l’industrie (Data Science,
prototypes, mathématiques avancées,…) : Java, Python, R, Matlab,…

 Jeux Vidéo: C++, C#, …

 Sites Internet (développement Web): PHP, Javascript, HTML,


CSS, Python, …

 Intelligence Artificielle: Prolog, Python, Java, …

 Base de Données: SQL, …

4 Et autres….
Langages de Programmation
Selon PYPL index: PopularitY of Programming Language

5
Pourquoi Python?
 Portable: Unix, Windows, Mac OS

 Hautement Productif:
Open source: communauté de développeurs python est très productive et
fournit plusieurs extensions. .

 Langage Interprété.

 Orienté Objet

 Organisations utilisant Python: Google, Instagram, Youtube,


DropBox, …

6
Domaines d’Application
 Machine Learning, Data science

 Administration système

 Prototypage Rapide des Applications.

 La recherche et le calcul scientifique

 Les applications de Gestion

 Les applications web

…
7
Chapitre II:
Notions de Base de Python
Les variables
 En programmation, les variables servent à mémoriser les données.

 Les variables sont des espaces de mémoire auquel ont donne un nom et une
valeur.
 Il existe plusieurs type de variables:

String = chaînes de caractères se place entre quotes (’) ou entre guillemets (")
Integer = Suite de chiffres éventuellement préfixé par un signe (+ou −).
Float = Nombre à virgule
Boolean = True/False

 Connaître le type d’un objet

type(nom_de_variable)
 Affiche le type d’une variable (ex. type(1.2) <class ‘float’>)

9
Les variables
Identificateur de variable

 Un identificateur est utilisé pour désigner le nom de cette variable.

Règles à respecter pour les noms de variables

 Une séquence de lettres (a → z, A → Z) et de chiffres (0 à 9) qui doit toujours


commencer par une lettre. Le symbole _ est considéré comme une lettre.

 Ne doit pas contenir de caractères spéciaux hormis l’underscore (« _ »).

 Le langage est sensibles à la casse et les accentués sont autorisés en Python 3


(mais pas en Python 2). Ceci signifie que cout, Cout et COUT réfèrent trois mots
différents et coût est licite.

Exemple :

Variable_entiere, entier1, mot_en_francais sont valides mais 1er_entier,


10
nom.2, nom de variable, et a-b ne le sont pas.
Les Opérateurs
Opérateur d’affectation =

Syntaxe : identificateur_de_variable = expression

>>> a= 2 (une valeur simple)


>>> b=a+(b*c) (une combinaison d’opérations)
>>> valeur_de_pi = 3.14159 (valeur constante)

 a est une variable, en interne elle a été automatiquement typée en entier.

N.B En Python, la déclaration d’une variable et son initialisation se font en même


temps.

1- Python a deviné que la variable était un entier.  Python possède donc


un typage dynamique et non un typage statique (C++, JAVA).
2- Python a alloué l’espace en mémoire pour y accueillir un entier, et a fait
en sorte qu’on puisse retrouver la variable sous le nom a
11 3- Python a assigné la valeur 2 à la variable a
Les Opérateurs
Opérateur d’affectation =

Affectation simple #typage automatique


a = 1.0
#typage explicite
a = float(1)

Affectations multiples
#même valeur pour plusieurs variables
a = b=2.5
>>> print (a, b)
2.5 2.5

Affectations parallèles
a, b=2.5, 3.2
>>> print (a, b)
2.5 3.2
12
Les Opérateurs
Opérateur d’affectation =

Une autre façon de réaliser l’affectation de plusieurs variables à la fois est de


placer la liste des variables à gauche de l’opérateur d’affectation et la liste des
expressions à droite de l’opérateur d’affectation.

>>> a = 5.0 >>> a, b = 10, 20


>>> b = 10.0 >>> print (a, b)
>>> a, b, c = a + b, a - b, 25 10 20
>>> print (a, b, c) >>> a, b = b, a
15.0 -5.0 25 >>> print (a, b)
>>> u = v = 1. 20 10
>>> u, v, w = u + w, v + w, 3.4 >>>
NameError: name 'w' is not defined

Permutation de variables sans


13 utiliser de variable temporaire.
Les opérations sur les nombres (entier, réel)
 Les opérateurs Arithmétiques

>>> x = 3 / 4
N.B: En Python 3, la division de >>> x
nombres entiers renvoie par défaut >>> 0.75
un nombre réel (float) . >>> type (x)
14
>>> <class ‘float’>
Les opérations sur les nombres (entier, réel)
 Priorité des opérateurs (PEMDAS)

P: Parenthèse
E: Exposant
M et D: Multiplication et division
A et S: Addition et soustraction

 A priorité égale, les opérations sont évaluées de la gauche à droite.

>>> x = 5
>>> y = 3
>>> print ((50-x*6)/y)
6.666
>>>

15
Les opérations sur les nombres (entier, réel)

 Les opérateurs d’affectation +=, -=, *=, /=, %=, **=, //=

But : L’évaluation d’une expression et une affectation sont combinées.

Exemple >>> x = 5 >>> x %= 3 >>> x //= 2


>>> x **= 2 >>> x >>> x
>>> x 1 0
25

Note : Contrairement à C++, Python ne renferme pas les opérateurs ++ et --.

16
Les opérations de Comparaison
 Les opérateurs de Comparaison
Opérateur Signification
== Est égal à
!= Est différent de
>>> a = 2 #Integer
>= Est plus grand ou égal que >>> b = 1.99 #Float
<= Est plus petit ou égal que >>> c = ‘2’ #String
> Est plus grand que >>> print (a>b)
True
< Est plus petit que
>>> print (a==c)
False
Opérateurs
>>> print ((a==c) and (a>b))
[Condition 1] and [Condition 2] False
AND
Si les deux conditions sont vraies => True >>> print ((a==c) or (a>b))
[Condition 1] and [Condition 2] True
OR
Si une des conditions est vraie => True
Not [Condition]
NOT
17
Si la condition est fausse => True
Les opérations de Comparaison
 Les opérateurs de comparaison renvoient « True » ou « False ».

N.B. On utilisera principalement ces opérateurs dans les branchements


18
conditionnels.
Les opérations sur les Chaînes de Caractères
>>> ‘‘Bonjour’’
>>> Bonjour >>> ‘ Aujourd\’hui’
>>> ‘Bonjour ’ >>> Aujourd’hui
>>> Bonjour >>> ‘ ‘‘ Oui ’’ il est correct ’
>>> ‘ Aujourd’hui’ >>> ‘‘ Oui ’’ il est correct
>>> SyntaxError: invalid syntax

Les opérations sur les chaines de caractères sont les suivantes:


L’addition (+) permet de concaténer deux string
La multiplication (*) permet de multiplier un string par un nombre entier
>>> ‘py’ ‘thon’ >>> texte= ‘‘ Je suis à ’’
>>> ‘python’ >>> texte ‘la maison’
>>> chaine_1 = ‘‘ Bonjour ’’ >>> SyntaxError: invalid syntax
>>> chaine_2 = ‘‘ Je m’appel Ali ’’ >>> texte + ‘la maison’
>>> chaine_1+chaine_2 >>> Je suis à la maison
>>> BonjourJe m’appel Ali >>> chaine_1*3
19
>>> BonjourBonjourBonjour
Les opérations sur les Chaînes de Caractères
 Il est possible d’ajouter des variables dans une chaine de caractères.

Pour cela, il faut ajouter les balises suivantes:


 « %s » : Pour ajouter un string

 « %i » : Pour ajouter un nombre entier

 « %.5f » : Pour ajouter un nombre à virgule (ici, 5 correspond au nombre de


décimales voulues)

>>> nom=‘’a’’
>>> val= 5.6547
>>> message=‘’la valeur de %s est de %f mais on peut l’arrondir à %.2f.’’
%(nom,val,val)
>>>
la valeur de a est de 5.6547 mais on peut l’arrondir à 5.65.

20
Saisie et affichage à la console
Saisie des données au clavier

input()
- permet d’effectuer une saisie au clavier
- La fonction renvoie toujours une chaîne, il faut convertir

 La fonction input avec un seul paramètre, une chaîne de caractères, lequel est
un message explicatif destiné à l’utilisateur.

a = input(« Saisir votre valeur »)


a = float (a)

21
Saisie et affichage à la console
Saisie des données au clavier

Exemple : Programme qui saisit 2 entiers et affiche leur quotient.

>>> # Ce programme saisit deux valeurs entières au clavier,


>>> # calcule le quotient et
>>> # affiche le résultat.
>>>
>>> m= input("Entrez la 1er valeur :")
34
m= input("Entrez la 2eme valeur :")
6
>>> resultat = int(m ) // int(n)
>>> print ("Le quotient de ", m, " par ", n, " est : ", resultat)
Le quotient de 34 par 6 est : 5
>>>
22
Saisie et affichage à la console
Affichage des données print()
>>> print (‘’ Bonjour’’)
>>> Bonjour
>>> print(4)
4
>>> print (‘c:\dossiers\nouha’)
C:\dossiers
ouha
>>> print (r ‘c:\dossiers\nouha’)
c:\dossiers\nouha
>>> print (3+3)
6
>>> print (‘’3+3 ’’)
3+3

 Un affichage multiple est possible

23 Ex. print(a,b) #affiche a et b


Fonctions de types numériques
type() Retourne le type de l’argument.

>>> u = 1 + 3.4j
>>> type(u)
<type 'complex'>
>>> type(3 + 4.4)
<type 'float'>

bool() Retourne True si l’argument est différent de 0. False autrement.


>>> bool(3.14)
True
>>> bool(0)
False
>>> bool(-3.14)
True
24
Fonctions de types numériques
int()
Prend en entrée comme argument une expression de valeur numérique
ou une chaîne de caractères représentant un entier et retourne le résultat
de l’expression où la partie fractionnaire a été omise ou la chaîne de
caractères convertie en entier. >>> int(3.14)
3
int() supprime le point décimal et toutes les décimales >>> int(-3.14)
qui suivent (le nombre est tronqué). -3
>>> int("3")
3

abs() Retourne la valeur absolue de l’argument.

>>> abs(-1 + 0.25)


0.75
25
Fonctions de types numériques

pow(m, n) ou pow(m, n, p) >>> pow(4, 2)


Dans les 2 cas, mn est d’abord calculé; puis, 16
si le troisième argument est fourni, >>> pow(3, 2, 5)
alors (m ** n) % p est retourné; 4
sinon, m ** n est retourné.
>>> round(3.4999999)
3
round() >>> round(2.8)
Arrondit un nombre réel à l’entier le plus 3
proche et retourne le résultat comme une >>> round(253.358901234, 2)
valeur réelle. Un 2ième paramètre présent 253.36
arrondit l’argument au nombre de déci- >>> round(-3.4), round(-3.5)
males indiqué. (-3, -4)

26
Fonctions de type String
 Accès aux caractères d’une chaîne
mot = "apprendre" # Le premier caractère est en position 0.
print (mot[3], mot[4], mot[5], mot[6]) r e n d
 Concaténation de chaînes à l’aide de l’opérateur +
mot = "apprend"
mot = mot + "re"
print (mot[3] + mot[4] + mot[5] + mot[6]) rend
 Répétition de chaînes à l’aide de l’opérateur *
mot = "cher" * 2 chercher
print (mot)

 Longueur d’une chaîne


print (len(mot)) 9

 Convertir une chaîne qui représente un nombre en un nombre véritable


m = "12.3" n = '13‘ print (float(m) + int(n)) 25.3
Fonctions de type String

 Convertir un nombre en une chaîne de caractères


str() Convertir un nombre en chaîne de caractères.

>>> print ("On peut concaténer une chaîne et un nombre converti : " + str(1.14 + 3))
On peut concaténer une chaîne et un nombre converti : 4.14
>>>
Fonctions sur le type String
Extraîre une sous-chaîne
 En déclarant l’indice de début (inclus) et l’indice de fin (exclu), séparés par (:)
 En déclarant l’indice de début (inclus) et l’indice de fin (exclu) et le pas , séparés
par (:) 0 1 2 3 4 5
P y t h o n
-6 -5 -4 -3 -2 -1
>>> mot = ”python” >>> mot[2:6]
>>> mot[0] ‘thon’
‘p’ >>> mot[0:2] + mot[2:6]
>>> mot[-1] ‘python’
‘n’ >>> mot[:2]
>>> mot[0]==mot[-1] ‘ py ‘
True >>> mot[-2:]
>>> mot[0:2] ‘on’
‘py’
>>> mot[2:5] >>> mot[1:5:2]
‘tho’ ‘yh’
Fonctions de type String
 Exemples d’Autres Fonctions
>>> mot = ”python”
>>> mot.capitalize() #1er lettre en Majuscule
‘Python’
>>> phrase=‘je suis à la maison’
>>> ‘’maison’’ in phrase #savoir si « maison » dans la phrase ou non
True
>>> ‘’Maison ‘’ in phrase
False
>>> phrase.find(‘’maison’’) >>> phrase.find(‘’Maison’’)
13 # « maison » commence à partir -1 # n’existe pas
de l’index 13
>>> phrase.count(‘’i’’) #renvoie le nombre de ‘’o’’ dans phrase
2
>>> phrase.upper() #convertit en majuscule
>>> phrase.lower() #convertit en miniscule

Vous aimerez peut-être aussi