SlideShare une entreprise Scribd logo
14/01/2018
1
INTRODUCTION AU LANGAGE
PYTHON
2017-2018
© Imene Sghaier
Octobre 2017
ISET Nabeul-Mastère SEM2
PLAN DU CHAPITRE
 Introduction
 À quoi peut servir Python ?
 Installation
 Premier programme Python
 Ecrire son code dans des fichiers
 Données et variables
 Les types numériques
 Opérations Arithmétiques
 Operateurs de comparaison
 Les opérateurs logiques
 Combinaison d’instructions
 Séquence d’instructions
 Fonctions intégrées
 Module math
 L’objet none 2
Imene Sghaier-Programmation Python
14/01/2018
2
INTRODUCTION
 Python est un langage de programmation créé
par Guido van Rossum en 1991.
 Ce langage a été baptisé ainsi en hommage à la
troupe de comiques les « Monty Python Flying
Circus».
 Il s’est vu ensuite associé une organisation à but
non lucratif particulièrement dévouée, la Python
Software Foundation, créée en 2001.
 À l’heure où est écrit ce cours, la version la plus
récente de Python est la version 3.6.3.
3
Imene Sghaier-Programmation Python
À QUOI PEUT SERVIR PYTHON ?
 Python est un langage :
 Orienté objets portable c’est-à-dire utilisable sur différents systèmes
d’exploitation.
 Doté d’un typage dynamique fort
 Sensible à la casse
 Python est un langage est un langage open source en évolution
puisqu’il est soutenu par une communauté d’utilisateurs, il est
puissant, à la fois facile à apprendre et riche en possibilités.
 Il est, en outre, très facile d'étendre les fonctionnalités existantes,
comme nous allons le voir. Ainsi, il existe ce qu'on appelle
des bibliothèques qui aident le développeur à travailler sur des
projets particuliers.
 Plusieurs bibliothèques peuvent ainsi être installées pour, par
exemple, développer des interfaces graphiques en Python. On pourra:
 créer des interfaces graphiques ;
 faire circuler des informations au travers d'un réseau ;
 dialoguer d'une façon avancée avec le système d'exploitation ;
 … 4
Imene Sghaier-Programmation Python
14/01/2018
3
INSTALLATION
 Vous pouvez installer la version 3.6.3 à partir du site
www.python.org/doanload
 Lancez le programme d’installation que vous venez de télécharger
 Une fois votre interpréteur lancé, Python vous informe qu’il est prêt
et attend vos instructions en ajoutant >>> au début de la ligne.
 Si vous tentez de taper ce qu’il vous passe par la tête, vous allez très
probablement vous retrouver avec une erreur. Par exemple :
 Ceci est donc votre première erreur et ce ne sera pas la dernière
^_^.
 Les erreurs commencent généralement par Traceback,
5
Imene Sghaier-Programmation Python
PREMIER PROGRAMME PYTHON
 L’interpréteur présente vite des limites dès lors
que l’on veut exécuter une suite d’instructions plus
complexe.
 Comme tout langage informatique, on peut
enregistrer ces instructions dans un fichier, que
l’on appelle communément un script Python.
 L’extension standard des scripts Python est .py.
 Ouvrez l’éditeur de python et écrivez l’instruction
suivante
print 'Hello World !'
 Ensuite enregistrez votre fichier sous le nom
hello.py, puis quittez l’éditeur de texte.
6
Imene Sghaier-Programmation Python
14/01/2018
4
ECRIRE SON CODE DANS DES FICHIERS
 Les scripts Python peuvent être exécutés :
 Soit en mode interpréteur interactif
 Soit via un éditeur IDLE.
 L’interpréteur est bien pratique pour tester de petits bouts
de code, mais il présente plusieurs inconvénients, l’un
d’entre eux étant que quand vous le fermez, tout votre code
disparait.
 C’est alors qu’interviennent les fichiers, qui nous
permettrons de sauvegarder notre travail. Il faut utiliser
un éditeur de texte un peu avancé et spécialisé dans
l’écriture de code.
 L’éditeur fourni avec l’interpréteur python 3.6.3 est IDLE,
il permet l’édition et l’exécution des scripts Python
7
Imene Sghaier-Programmation Python
ECRIRE SON CODE DANS DES FICHIERS
 Une fois dans votre éditeur, tapez votre code puis
enregistrez votre fichier.
 Si vous utilisez un autre éditeur outre que IDLE spécifiez
l’extension .py au moment de l’enregistrement.
 Ouvrez votre explorateur de fichier et rendez vous dans le
dossier où vous avez sauvegardé votre fichier.
 Maintenant, pour exécuter votre code, vous pouvez utiliser
l’invite des commandes (shell sous linux ou DOS sous
windows) en utilisant la commande
 python nom_Fichier_Source #sous windows
 Python3 nom_Fichier_Source #sous linux
 Pour exécuter votre script sous windows, vous pouvez
tapez F5 directement sur IDLE
 Exemple…
8
Imene Sghaier-Programmation Python
14/01/2018
5
DONNÉES ET VARIABLES
 Sous python:
 Un nom de variable est une séquence de lettres (a → z , A → Z)
et de chiffres (0 → 9), qui doit toujours commencer par une
lettre.
 Seules les lettres ordinaires sont autorisées. Les lettres
accentuées, les cédilles, les espaces, les caractères spéciaux tels
que $, #, @, etc. sont interdits, à l’exception du caractère _
(souligné 8).
 La casse est significative (les caractères majuscules et
minuscules sont distingués). Attention : Imene, imene, IMENE
sont donc des variables différentes. Soyez attentifs !
 Il n’y a pas de notion de constante!!
 Par convention les noms de variables sont en caractères
minuscules
 N’utilisez les majuscules qu’à l’intérieur même du nom,
pour en augmenter éventuellement la lisibilité, comme
dans tableDesVariables
9
Imene Sghaier-Programmation Python
DONNÉES ET VARIABLES
 En plus de ces règles, il faut encore ajouter que vous
ne pouvez pas utiliser comme nom de variables les 33
« mots réservés » ci-dessous (ils sont utilisés par le
langage lui-même) :
10
Imene Sghaier-Programmation Python
14/01/2018
6
DONNÉES ET VARIABLES : L’ AFFECTATION
 Les termes « affecter une valeur » ou « assigner une
valeur » à une variable sont équivalents. Ils
désignent l’opération par laquelle on établit un lien
entre le nom de la variable et sa valeur (son
contenu).
 En Python comme dans de nombreux autres
langages, l’opération d’affectation est représentée
par le signe égale:
11
Imene Sghaier-Programmation Python
DONNÉES ET VARIABLES : L’ AFFECTATION
 Une instruction d’affectation a pour effet de
réaliser plusieurs opérations dans la mémoire de
l’ordinateur :
 Créer et mémoriser un nom de variable ;
 Lui attribuer un type bien déterminé selon la valeur
qu’on lui a affectée;
 Créer et mémoriser une valeur particulière ;
 Etablir un lien (par un système interne de pointeurs)
entre le nom de la variable et l’emplacement mémoire
de la valeur correspondante.
12
Imene Sghaier-Programmation Python
14/01/2018
7
DONNÉES ET VARIABLES : L’ AFFECTATION
 Les trois noms de variables sont des références,
mémorisées dans une zone particulière de la mémoire
que l’on appelle espace de noms, alors que les valeurs
correspondantes sont situées ailleurs, dans des
emplacements parfois fort éloignés les uns des autres.
13
Imene Sghaier-Programmation Python
n message reel
7 bjr 1.14
DONNÉES ET VARIABLES : AFFECTATIONS MULTIPLES
14
Imene Sghaier-Programmation Python
 Sous Python, on peut assigner une valeur à plusieurs
variables simultanément
 On peut aussi effectuer des affe ctation s parallèle s à
l’aide d’un seul opérateur
14/01/2018
8
DONNÉES ET VARIABLES : L’ AFFICHAGE
 Pour afficher la valeur d’une variable à l’écran,
il existe deux possibilités:
 La première consiste à entrer au clavier le nom de
la variable, puis . Python répond en affichant la
valeur correspondante :
 À l’intérieur d’un programme, vous utiliserez
toujours la fonction print():
15
Imene Sghaier-Programmation Python
DONNÉES ET VARIABLES : L’ AFFICHAGE
 Remarquez la subtile différence dans les
affichages obtenus avec chacune des deux
méthodes. La fonction print() n’affiche
strictement que la valeur de la variable, telle
qu’elle a été encodée, alors que l’autre méthode
(celle qui consiste à entrer seulement le nom de
la variable) affiche aussi des apostrophes afin
de vous rappeler que la variable traitée est du
type « chaîne de caractères ».
16
Imene Sghaier-Programmation Python
14/01/2018
9
DONNÉES ET VARIABLES : TYPAGE
 Sous Python, il n’est pas nécessaire d’écrire des
lignes de programme spécifiques pour définir le
type des variables avant de pouvoir les utiliser.
 Il vous suffit en effet d’assigner une valeur à
un nom de variable pour que celle-ci soit
automatiquement créée avec le type qui
correspond au mieux à la valeur fournie.
 Par exemple, les variables n, msg et pi ont été
créées automatiquement chacune avec un type
différent (« nombre entier » pour n, « chaîne de
caractères » pour message, « nombre à virgule
flottante ») pour reel)
17
Imene Sghaier-Programmation Python
DONNÉES ET VARIABLES : TYPAGE
 Python est un langage à typage dynamique fort:
pas de déclaration des variables au préalable.
 Exemple
 x=1  La variable x à ce moment d’exécution
est un entier, d’où les méthodes manipulant les
entiers seront chargées en mémoire.
 x=‘abc’  Le système change le type de la
variable x vers str et il nous prépare la liste des
méthodes appropriées au type chaîne de
caractères.
 La commande type (nomVariable) affiche le type
alors que la commande dir (nomVariable)
affiche la bibliothèque appropriée au type du
nomVariable.
18
Imene Sghaier-Programmation Python
14/01/2018
10
DONNÉES ET VARIABLES : TYPAGE
 Ceci est une particularité intéressante de Python, qui le
rattache à une famille particulière de langages où l’on
trouve aussi par exemple Lisp, Scheme, et quelques autres.
 On dira à ce sujet que le typage des variables sous Python
est un typage dynamique, par opposition au typage
statique qui est de règle par exemple en C++ ou en Java.
 Le typage statique est préférable dans le cas des langages
compilés, parce qu’il permet d’optimiser l’opération de
compilation.
 Le typage dynamique quant à lui permet d’écrire plus
aisément des constructions logiques de niveau élevé en
particulier dans le contexte de la programmation orientée
objet (polymorphisme). Il facilite également l’utilisation de
structures de données très riches telles que les listes et les
dictionnaires. 19
Imene Sghaier-Programmation Python
DONNÉES ET VARIABLES : TYPAGE
20
Imene Sghaier-Programmation Python
x est de type entier  le système charge la bibliothèque des entiers
x est de type chaîne de caractères  le système charge la
bibliothèque appropriée
14/01/2018
11
LES TYPES NUMÉRIQUES
 Python permet de manipuler :
 les entiers, les réels, les booléens et les nombres
complexes
 Les types structurés appelés aussi conteneurs que nous
traiterons dans les prochains chapitres
 L’ensemble des types numériques ont en commun
un certain nombre d’opérateurs applicables comme
les opérateurs arithmétiques et aussi certains
nombre de commandes
21
Imene Sghaier-Programmation Python
LES TYPES NUMÉRIQUES
 Les types numériques comportent:
 Les nombres entiers : 10 – 25
 Les nombres à virgules flottantes : 10.24 – 25.
 Les nombres longs
 Les nombres complexes a+bj
 Les nombres en base octale : 0o10 – 0o20 (Zéro suivi
par la ‘o’ suivi par un nombre en octal)
 Les nombres en base hexadécimale : 0xA – 0x16 (Zéro
suivi par la ‘x’ suivi par un nombre en hexadécimal).
 Exemples :
22
Imene Sghaier-Programmation Python
14/01/2018
12
OPÉRATIONS ARITHMÉTIQUES
23
Imene Sghaier-Programmation Python
Symbole Description Exemple
+ addition 5+3  8
- soustraction 5-3 2
* multiplication 5*3  15
/
division (entière ou réelle selon le
type de donnée)
5/3  1
5.1/3  1.7
** élévation à la puissance 5**3  125
// division entière 5//3  1
% reste de la division entière 5%3  2
OPÉRATIONS ARITHMÉTIQUES
 Remarquez que le # suivi d’un texte veut dire un
commentaire. Le dièse informe Python que tout ce qui
se trouve sur la même ligne après lui ne le concerne pas
: il va donc simplement l’ignorer.
"""
Un commentaire
sur plusieurs lignes que dans python
"""
24
Imene Sghaier-Programmation Python
14/01/2018
13
OPÉRATIONS ARITHMÉTIQUES
 Trois autres opérations : la division entière, le
modulo et l’élévation à une puissance. Les deux
premières correspondent au quotient et au reste des
divisions que l’on posait à la main.
 Le quotient
 Le reste de la division
 La puissance
25
Imene Sghaier-Programmation Python
OPÉRATIONS ARITHMÉTIQUES
 Sous Python 3, l’opérateur de division / effectue une
division réelle. Si vous souhaitez obtenir une division, vous
devez utiliser l’opérateur //. Notez bien que ceci est l’un
des changements de syntaxe apportés à la version 3 de
Python, par rapport aux versions précédentes.
 Si vous utilisez l’une des anciennes, sachez que
l’opérateur / y effectue par défaut une division entière, si
on lui fournit des arguments qui sont eux-mêmes des
entiers, et une division réelle, si au moins l’un des
arguments est un réel.
 Le caractère _ veut dire résultat de la dernière
commande
26
Imene Sghaier-Programmation Python
14/01/2018
14
OPÉRATIONS ARITHMÉTIQUES: PRIORITÉ
 Python suit l’ordre conventionnel de priorité des
opérations mathématiques :
1- L’élévation à la puissance
2- La multiplication
3- La division,
4- L’addition et la soustraction
 Vous pouvez néanmoins changer cet ordre en
utilisant des parenthèses pour donner la priorité à
une opération, comme en mathématiques.
27
Imene Sghaier-Programmation Python
OPERATEURS DE COMPARAISON
28
Imene Sghaier-Programmation Python
14/01/2018
15
LES OPÉRATEURS LOGIQUES
 Les opérateurs logiques sont applicables sur des
booléens (True et False)
29
Imene Sghaier-Programmation Python
COMBINAISON D’INSTRUCTIONS
30
Imene Sghaier-Programmation Python
 Si vous savez comment additionner deux nombres et
comment afficher une valeur, vous pouvez combiner ces
deux instructions en une seule:
 Cela n’a l’air de rien, mais cette fonctionnalité qui paraît
si évidente va vous permettre de programmer des
algorithmes complexes de façon claire et concise.
 Il est interdit d’utiliser une variable non initialisée dans
une expression
14/01/2018
16
SÉQUENCE D’INSTRUCTIONS
31
Imene Sghaier-Programmation Python
 Sauf mention explicite, les instructions d’un programme
s’exécutent les unes après les autres, dans l’ordre où elles
ont été écrites à l’intérieur du script.
 Cette affirmation peut vous paraître banale et évidente à
première vue. L’expérience montre cependant qu’un
grand nombre d’erreurs sémantiques dans les
programmes d’ordinateur sont la conséquence d’une
mauvaise disposition des instructions.
 On peut effectuer une exécution séquentielle d’un
ensemble de commandes écrites sur une même ligne:
FONCTIONS INTÉGRÉES
32
Imene Sghaier-Programmation Python
 Pour interagir avec python on tape des commandes
appelées aussi des builtins, ce sont des commandes prêtes
à l’utilisation et qui sont chargées automatiquement en
mémoire de l’ordinateur (car on ne peut pas utiliser une
commande qui n’est pas déjà en mémoire centrale)
 Valeur absolue
 Conversion de type
14/01/2018
17
FONCTIONS INTÉGRÉES
33
Imene Sghaier-Programmation Python
 Identifiant de variable
 Chaque variable possède un identifiant accessible via la
commande id
 Comparaison d’identifiant
 La commande is permet de vérifier si deux variables possèdent
le même identifiant
FONCTIONS INTÉGRÉES
34
Imene Sghaier-Programmation Python
 Passage entre bases binaire, hexadécimale, octale
 Fonctions mathématiques
 Puissance
 div et mod (quotient et reste)
 Minimum et maximum
 Arrondi
14/01/2018
18
FONCTIONS INTÉGRÉES
35
Imene Sghaier-Programmation Python
 Fonctions mathématiques
 Nombres complexes
 Codes ascii
 Caractères
FONCTIONS INTÉGRÉES
 La fonction type permet de voir le type d’une
expression
 Opérateurs avancés d’affectation
36
Imene Sghaier-Programmation Python
14/01/2018
19
MODULE MATH
 Python regroupe les commandes par thèmes
dans des unités appelées modules
 Un module regroupe un ensemble de variable et
de fonctions prêtes à l’utilisation
 Il suffit d’importer le module avec le mot clès
import et d’appeler la fonction voulue en la
préfixant par le nom_module.
37
Imene Sghaier-Programmation Python
MODULE MATH
 Le contenu d’un module peut être vu en
utilisant la commande dir(nomModule)
38
Imene Sghaier-Programmation Python
14/01/2018
20
MODULE MATH
 L’aide d’un module peut être affichée en utilisant la
commande help(nomModule)
 Comme ça vous pourrez voir les différentes fonctions
d’un module ^_^
 Le module cmath offre toutes les fonctions
mathématiques applicables sur les nombres complexes 39
Imene Sghaier-Programmation Python
L’OBJET NONE
 L’objet None est utilisé pour représenter
l’absence de valeur.
 Il est similaire à l’objet null dans d’autres
langages de programmation (java par exemple)
 Comme d’autre valeurs vides par exemple 0, [] et
la chaîne de caractères vide, il est égal
à False quand il est convertit en boolean
40
Imene Sghaier-Programmation Python
14/01/2018
21
RÉFÉRENCES
 https://www.python.org/
 https://openclassrooms.com/courses/apprenez-a-
programmer-en-python
41
Imene Sghaier-Programmation Python

Contenu connexe

Similaire à Python chapitre 1.pdf

Cours_C_for_Etudiant.pdf
Cours_C_for_Etudiant.pdfCours_C_for_Etudiant.pdf
Cours_C_for_Etudiant.pdf
Hailisara
 
découverte du langage python dans tous ses aspects
découverte du langage python dans tous ses aspectsdécouverte du langage python dans tous ses aspects
découverte du langage python dans tous ses aspects
Thierry Gayet
 
Support Formation Samsung - Python - Session 1 - 2022.pptx
Support Formation Samsung - Python - Session 1 - 2022.pptxSupport Formation Samsung - Python - Session 1 - 2022.pptx
Support Formation Samsung - Python - Session 1 - 2022.pptx
bpmana
 
cours fortran.pptx
cours fortran.pptxcours fortran.pptx
cours fortran.pptx
MED B
 
Le langage C.pdf
Le langage C.pdfLe langage C.pdf
Le langage C.pdf
NoamHaythem
 
Formation python
Formation pythonFormation python
Formation python
j_lipaz
 
Tp python
Tp pythonTp python
Tp python
Slim Moalla
 
Tp python dauphine
Tp python dauphineTp python dauphine
Tp python dauphine
noussa krid
 
Tutoriel java
Tutoriel javaTutoriel java
Tutoriel java
Kalilou DIABY
 
chapitre 4-PHP5 module web part2 (1).pdf
chapitre 4-PHP5 module web part2 (1).pdfchapitre 4-PHP5 module web part2 (1).pdf
chapitre 4-PHP5 module web part2 (1).pdf
imaneeaouattahee
 
M2 INAE introduction python.pdf
M2 INAE introduction python.pdfM2 INAE introduction python.pdf
M2 INAE introduction python.pdf
Hajer Amdouni
 
AlterWay SolutionsLinux Outils Industrialisation PHP
AlterWay SolutionsLinux Outils Industrialisation PHPAlterWay SolutionsLinux Outils Industrialisation PHP
AlterWay SolutionsLinux Outils Industrialisation PHP
julien pauli
 
20100221 my phingtool - blog
20100221   my phingtool - blog20100221   my phingtool - blog
20100221 my phingtool - blogPHPPRO
 
Asd
AsdAsd
Ktab asd
Ktab asdKtab asd
Ktab asd
jemaa samir
 
Algorithmique_et_programmation_part2
Algorithmique_et_programmation_part2Algorithmique_et_programmation_part2
Algorithmique_et_programmation_part2Emeric Tapachès
 

Similaire à Python chapitre 1.pdf (20)

Cours_C_for_Etudiant.pdf
Cours_C_for_Etudiant.pdfCours_C_for_Etudiant.pdf
Cours_C_for_Etudiant.pdf
 
découverte du langage python dans tous ses aspects
découverte du langage python dans tous ses aspectsdécouverte du langage python dans tous ses aspects
découverte du langage python dans tous ses aspects
 
Support Formation Samsung - Python - Session 1 - 2022.pptx
Support Formation Samsung - Python - Session 1 - 2022.pptxSupport Formation Samsung - Python - Session 1 - 2022.pptx
Support Formation Samsung - Python - Session 1 - 2022.pptx
 
Formation php 1
Formation php 1Formation php 1
Formation php 1
 
Formation php 1
Formation php 1Formation php 1
Formation php 1
 
Forma php
Forma phpForma php
Forma php
 
Python chapitre 4.pdf
Python chapitre 4.pdfPython chapitre 4.pdf
Python chapitre 4.pdf
 
cours fortran.pptx
cours fortran.pptxcours fortran.pptx
cours fortran.pptx
 
Le langage C.pdf
Le langage C.pdfLe langage C.pdf
Le langage C.pdf
 
Formation python
Formation pythonFormation python
Formation python
 
Tp python
Tp pythonTp python
Tp python
 
Tp python dauphine
Tp python dauphineTp python dauphine
Tp python dauphine
 
Tutoriel java
Tutoriel javaTutoriel java
Tutoriel java
 
chapitre 4-PHP5 module web part2 (1).pdf
chapitre 4-PHP5 module web part2 (1).pdfchapitre 4-PHP5 module web part2 (1).pdf
chapitre 4-PHP5 module web part2 (1).pdf
 
M2 INAE introduction python.pdf
M2 INAE introduction python.pdfM2 INAE introduction python.pdf
M2 INAE introduction python.pdf
 
AlterWay SolutionsLinux Outils Industrialisation PHP
AlterWay SolutionsLinux Outils Industrialisation PHPAlterWay SolutionsLinux Outils Industrialisation PHP
AlterWay SolutionsLinux Outils Industrialisation PHP
 
20100221 my phingtool - blog
20100221   my phingtool - blog20100221   my phingtool - blog
20100221 my phingtool - blog
 
Asd
AsdAsd
Asd
 
Ktab asd
Ktab asdKtab asd
Ktab asd
 
Algorithmique_et_programmation_part2
Algorithmique_et_programmation_part2Algorithmique_et_programmation_part2
Algorithmique_et_programmation_part2
 

Plus de Institut Supérieur des Etudes Technologiques de Nabeul

Les sockets.pptx
Les sockets.pptxLes sockets.pptx
chapitre 7 Android 2.pptx
chapitre 7 Android 2.pptxchapitre 7 Android 2.pptx
chapitre 6 Android 2.pptx
chapitre 6 Android 2.pptxchapitre 6 Android 2.pptx
chapitre 5 Android 2.pptx
chapitre 5 Android 2.pptxchapitre 5 Android 2.pptx
chapitre 4 Android 2.pptx
chapitre 4 Android 2.pptxchapitre 4 Android 2.pptx
chapitre 3 Android 2.pptx
chapitre 3 Android 2.pptxchapitre 3 Android 2.pptx
chapitre 2 Android 2.pptx
chapitre 2 Android 2.pptxchapitre 2 Android 2.pptx
chapitre 1 Android 2.pptx
chapitre 1 Android 2.pptxchapitre 1 Android 2.pptx
chap 3 Technologies de communication.pdf
chap 3 Technologies de communication.pdfchap 3 Technologies de communication.pdf
chap 3 Technologies de communication.pdf
Institut Supérieur des Etudes Technologiques de Nabeul
 
Introduction à l'IoT.pdf
Introduction à l'IoT.pdfIntroduction à l'IoT.pdf
chap 7 POO Java Les Exceptions.pptx
chap 7 POO Java Les Exceptions.pptxchap 7 POO Java Les Exceptions.pptx
chap 7 POO Java Les Exceptions.pptx
Institut Supérieur des Etudes Technologiques de Nabeul
 
Chap 6 POO Java.pptx
Chap 6 POO Java.pptxChap 6 POO Java.pptx
chap 5 POO Java.pptx
chap 5 POO Java.pptxchap 5 POO Java.pptx

Plus de Institut Supérieur des Etudes Technologiques de Nabeul (20)

Les sockets.pptx
Les sockets.pptxLes sockets.pptx
Les sockets.pptx
 
chapitre 8 Android 2.pptx
chapitre 8 Android 2.pptxchapitre 8 Android 2.pptx
chapitre 8 Android 2.pptx
 
chapitre 7 Android 2.pptx
chapitre 7 Android 2.pptxchapitre 7 Android 2.pptx
chapitre 7 Android 2.pptx
 
chapitre 6 Android 2.pptx
chapitre 6 Android 2.pptxchapitre 6 Android 2.pptx
chapitre 6 Android 2.pptx
 
chapitre 5 Android 2.pptx
chapitre 5 Android 2.pptxchapitre 5 Android 2.pptx
chapitre 5 Android 2.pptx
 
chapitre 4 Android 2.pptx
chapitre 4 Android 2.pptxchapitre 4 Android 2.pptx
chapitre 4 Android 2.pptx
 
chapitre 3 Android 2.pptx
chapitre 3 Android 2.pptxchapitre 3 Android 2.pptx
chapitre 3 Android 2.pptx
 
chapitre 2 Android 2.pptx
chapitre 2 Android 2.pptxchapitre 2 Android 2.pptx
chapitre 2 Android 2.pptx
 
chapitre 1 Android 2.pptx
chapitre 1 Android 2.pptxchapitre 1 Android 2.pptx
chapitre 1 Android 2.pptx
 
Python chapitre 7.pdf
Python chapitre 7.pdfPython chapitre 7.pdf
Python chapitre 7.pdf
 
Python chapitre 6.pdf
Python chapitre 6.pdfPython chapitre 6.pdf
Python chapitre 6.pdf
 
Python chapitre 5.pdf
Python chapitre 5.pdfPython chapitre 5.pdf
Python chapitre 5.pdf
 
Python chapitre 3.pdf
Python chapitre 3.pdfPython chapitre 3.pdf
Python chapitre 3.pdf
 
Python chapitre 2.pdf
Python chapitre 2.pdfPython chapitre 2.pdf
Python chapitre 2.pdf
 
chap 3 Technologies de communication.pdf
chap 3 Technologies de communication.pdfchap 3 Technologies de communication.pdf
chap 3 Technologies de communication.pdf
 
Chap 2 capteurs et IoT.pdf
Chap 2 capteurs et IoT.pdfChap 2 capteurs et IoT.pdf
Chap 2 capteurs et IoT.pdf
 
Introduction à l'IoT.pdf
Introduction à l'IoT.pdfIntroduction à l'IoT.pdf
Introduction à l'IoT.pdf
 
chap 7 POO Java Les Exceptions.pptx
chap 7 POO Java Les Exceptions.pptxchap 7 POO Java Les Exceptions.pptx
chap 7 POO Java Les Exceptions.pptx
 
Chap 6 POO Java.pptx
Chap 6 POO Java.pptxChap 6 POO Java.pptx
Chap 6 POO Java.pptx
 
chap 5 POO Java.pptx
chap 5 POO Java.pptxchap 5 POO Java.pptx
chap 5 POO Java.pptx
 

Python chapitre 1.pdf

  • 1. 14/01/2018 1 INTRODUCTION AU LANGAGE PYTHON 2017-2018 © Imene Sghaier Octobre 2017 ISET Nabeul-Mastère SEM2 PLAN DU CHAPITRE  Introduction  À quoi peut servir Python ?  Installation  Premier programme Python  Ecrire son code dans des fichiers  Données et variables  Les types numériques  Opérations Arithmétiques  Operateurs de comparaison  Les opérateurs logiques  Combinaison d’instructions  Séquence d’instructions  Fonctions intégrées  Module math  L’objet none 2 Imene Sghaier-Programmation Python
  • 2. 14/01/2018 2 INTRODUCTION  Python est un langage de programmation créé par Guido van Rossum en 1991.  Ce langage a été baptisé ainsi en hommage à la troupe de comiques les « Monty Python Flying Circus».  Il s’est vu ensuite associé une organisation à but non lucratif particulièrement dévouée, la Python Software Foundation, créée en 2001.  À l’heure où est écrit ce cours, la version la plus récente de Python est la version 3.6.3. 3 Imene Sghaier-Programmation Python À QUOI PEUT SERVIR PYTHON ?  Python est un langage :  Orienté objets portable c’est-à-dire utilisable sur différents systèmes d’exploitation.  Doté d’un typage dynamique fort  Sensible à la casse  Python est un langage est un langage open source en évolution puisqu’il est soutenu par une communauté d’utilisateurs, il est puissant, à la fois facile à apprendre et riche en possibilités.  Il est, en outre, très facile d'étendre les fonctionnalités existantes, comme nous allons le voir. Ainsi, il existe ce qu'on appelle des bibliothèques qui aident le développeur à travailler sur des projets particuliers.  Plusieurs bibliothèques peuvent ainsi être installées pour, par exemple, développer des interfaces graphiques en Python. On pourra:  créer des interfaces graphiques ;  faire circuler des informations au travers d'un réseau ;  dialoguer d'une façon avancée avec le système d'exploitation ;  … 4 Imene Sghaier-Programmation Python
  • 3. 14/01/2018 3 INSTALLATION  Vous pouvez installer la version 3.6.3 à partir du site www.python.org/doanload  Lancez le programme d’installation que vous venez de télécharger  Une fois votre interpréteur lancé, Python vous informe qu’il est prêt et attend vos instructions en ajoutant >>> au début de la ligne.  Si vous tentez de taper ce qu’il vous passe par la tête, vous allez très probablement vous retrouver avec une erreur. Par exemple :  Ceci est donc votre première erreur et ce ne sera pas la dernière ^_^.  Les erreurs commencent généralement par Traceback, 5 Imene Sghaier-Programmation Python PREMIER PROGRAMME PYTHON  L’interpréteur présente vite des limites dès lors que l’on veut exécuter une suite d’instructions plus complexe.  Comme tout langage informatique, on peut enregistrer ces instructions dans un fichier, que l’on appelle communément un script Python.  L’extension standard des scripts Python est .py.  Ouvrez l’éditeur de python et écrivez l’instruction suivante print 'Hello World !'  Ensuite enregistrez votre fichier sous le nom hello.py, puis quittez l’éditeur de texte. 6 Imene Sghaier-Programmation Python
  • 4. 14/01/2018 4 ECRIRE SON CODE DANS DES FICHIERS  Les scripts Python peuvent être exécutés :  Soit en mode interpréteur interactif  Soit via un éditeur IDLE.  L’interpréteur est bien pratique pour tester de petits bouts de code, mais il présente plusieurs inconvénients, l’un d’entre eux étant que quand vous le fermez, tout votre code disparait.  C’est alors qu’interviennent les fichiers, qui nous permettrons de sauvegarder notre travail. Il faut utiliser un éditeur de texte un peu avancé et spécialisé dans l’écriture de code.  L’éditeur fourni avec l’interpréteur python 3.6.3 est IDLE, il permet l’édition et l’exécution des scripts Python 7 Imene Sghaier-Programmation Python ECRIRE SON CODE DANS DES FICHIERS  Une fois dans votre éditeur, tapez votre code puis enregistrez votre fichier.  Si vous utilisez un autre éditeur outre que IDLE spécifiez l’extension .py au moment de l’enregistrement.  Ouvrez votre explorateur de fichier et rendez vous dans le dossier où vous avez sauvegardé votre fichier.  Maintenant, pour exécuter votre code, vous pouvez utiliser l’invite des commandes (shell sous linux ou DOS sous windows) en utilisant la commande  python nom_Fichier_Source #sous windows  Python3 nom_Fichier_Source #sous linux  Pour exécuter votre script sous windows, vous pouvez tapez F5 directement sur IDLE  Exemple… 8 Imene Sghaier-Programmation Python
  • 5. 14/01/2018 5 DONNÉES ET VARIABLES  Sous python:  Un nom de variable est une séquence de lettres (a → z , A → Z) et de chiffres (0 → 9), qui doit toujours commencer par une lettre.  Seules les lettres ordinaires sont autorisées. Les lettres accentuées, les cédilles, les espaces, les caractères spéciaux tels que $, #, @, etc. sont interdits, à l’exception du caractère _ (souligné 8).  La casse est significative (les caractères majuscules et minuscules sont distingués). Attention : Imene, imene, IMENE sont donc des variables différentes. Soyez attentifs !  Il n’y a pas de notion de constante!!  Par convention les noms de variables sont en caractères minuscules  N’utilisez les majuscules qu’à l’intérieur même du nom, pour en augmenter éventuellement la lisibilité, comme dans tableDesVariables 9 Imene Sghaier-Programmation Python DONNÉES ET VARIABLES  En plus de ces règles, il faut encore ajouter que vous ne pouvez pas utiliser comme nom de variables les 33 « mots réservés » ci-dessous (ils sont utilisés par le langage lui-même) : 10 Imene Sghaier-Programmation Python
  • 6. 14/01/2018 6 DONNÉES ET VARIABLES : L’ AFFECTATION  Les termes « affecter une valeur » ou « assigner une valeur » à une variable sont équivalents. Ils désignent l’opération par laquelle on établit un lien entre le nom de la variable et sa valeur (son contenu).  En Python comme dans de nombreux autres langages, l’opération d’affectation est représentée par le signe égale: 11 Imene Sghaier-Programmation Python DONNÉES ET VARIABLES : L’ AFFECTATION  Une instruction d’affectation a pour effet de réaliser plusieurs opérations dans la mémoire de l’ordinateur :  Créer et mémoriser un nom de variable ;  Lui attribuer un type bien déterminé selon la valeur qu’on lui a affectée;  Créer et mémoriser une valeur particulière ;  Etablir un lien (par un système interne de pointeurs) entre le nom de la variable et l’emplacement mémoire de la valeur correspondante. 12 Imene Sghaier-Programmation Python
  • 7. 14/01/2018 7 DONNÉES ET VARIABLES : L’ AFFECTATION  Les trois noms de variables sont des références, mémorisées dans une zone particulière de la mémoire que l’on appelle espace de noms, alors que les valeurs correspondantes sont situées ailleurs, dans des emplacements parfois fort éloignés les uns des autres. 13 Imene Sghaier-Programmation Python n message reel 7 bjr 1.14 DONNÉES ET VARIABLES : AFFECTATIONS MULTIPLES 14 Imene Sghaier-Programmation Python  Sous Python, on peut assigner une valeur à plusieurs variables simultanément  On peut aussi effectuer des affe ctation s parallèle s à l’aide d’un seul opérateur
  • 8. 14/01/2018 8 DONNÉES ET VARIABLES : L’ AFFICHAGE  Pour afficher la valeur d’une variable à l’écran, il existe deux possibilités:  La première consiste à entrer au clavier le nom de la variable, puis . Python répond en affichant la valeur correspondante :  À l’intérieur d’un programme, vous utiliserez toujours la fonction print(): 15 Imene Sghaier-Programmation Python DONNÉES ET VARIABLES : L’ AFFICHAGE  Remarquez la subtile différence dans les affichages obtenus avec chacune des deux méthodes. La fonction print() n’affiche strictement que la valeur de la variable, telle qu’elle a été encodée, alors que l’autre méthode (celle qui consiste à entrer seulement le nom de la variable) affiche aussi des apostrophes afin de vous rappeler que la variable traitée est du type « chaîne de caractères ». 16 Imene Sghaier-Programmation Python
  • 9. 14/01/2018 9 DONNÉES ET VARIABLES : TYPAGE  Sous Python, il n’est pas nécessaire d’écrire des lignes de programme spécifiques pour définir le type des variables avant de pouvoir les utiliser.  Il vous suffit en effet d’assigner une valeur à un nom de variable pour que celle-ci soit automatiquement créée avec le type qui correspond au mieux à la valeur fournie.  Par exemple, les variables n, msg et pi ont été créées automatiquement chacune avec un type différent (« nombre entier » pour n, « chaîne de caractères » pour message, « nombre à virgule flottante ») pour reel) 17 Imene Sghaier-Programmation Python DONNÉES ET VARIABLES : TYPAGE  Python est un langage à typage dynamique fort: pas de déclaration des variables au préalable.  Exemple  x=1  La variable x à ce moment d’exécution est un entier, d’où les méthodes manipulant les entiers seront chargées en mémoire.  x=‘abc’  Le système change le type de la variable x vers str et il nous prépare la liste des méthodes appropriées au type chaîne de caractères.  La commande type (nomVariable) affiche le type alors que la commande dir (nomVariable) affiche la bibliothèque appropriée au type du nomVariable. 18 Imene Sghaier-Programmation Python
  • 10. 14/01/2018 10 DONNÉES ET VARIABLES : TYPAGE  Ceci est une particularité intéressante de Python, qui le rattache à une famille particulière de langages où l’on trouve aussi par exemple Lisp, Scheme, et quelques autres.  On dira à ce sujet que le typage des variables sous Python est un typage dynamique, par opposition au typage statique qui est de règle par exemple en C++ ou en Java.  Le typage statique est préférable dans le cas des langages compilés, parce qu’il permet d’optimiser l’opération de compilation.  Le typage dynamique quant à lui permet d’écrire plus aisément des constructions logiques de niveau élevé en particulier dans le contexte de la programmation orientée objet (polymorphisme). Il facilite également l’utilisation de structures de données très riches telles que les listes et les dictionnaires. 19 Imene Sghaier-Programmation Python DONNÉES ET VARIABLES : TYPAGE 20 Imene Sghaier-Programmation Python x est de type entier  le système charge la bibliothèque des entiers x est de type chaîne de caractères  le système charge la bibliothèque appropriée
  • 11. 14/01/2018 11 LES TYPES NUMÉRIQUES  Python permet de manipuler :  les entiers, les réels, les booléens et les nombres complexes  Les types structurés appelés aussi conteneurs que nous traiterons dans les prochains chapitres  L’ensemble des types numériques ont en commun un certain nombre d’opérateurs applicables comme les opérateurs arithmétiques et aussi certains nombre de commandes 21 Imene Sghaier-Programmation Python LES TYPES NUMÉRIQUES  Les types numériques comportent:  Les nombres entiers : 10 – 25  Les nombres à virgules flottantes : 10.24 – 25.  Les nombres longs  Les nombres complexes a+bj  Les nombres en base octale : 0o10 – 0o20 (Zéro suivi par la ‘o’ suivi par un nombre en octal)  Les nombres en base hexadécimale : 0xA – 0x16 (Zéro suivi par la ‘x’ suivi par un nombre en hexadécimal).  Exemples : 22 Imene Sghaier-Programmation Python
  • 12. 14/01/2018 12 OPÉRATIONS ARITHMÉTIQUES 23 Imene Sghaier-Programmation Python Symbole Description Exemple + addition 5+3  8 - soustraction 5-3 2 * multiplication 5*3  15 / division (entière ou réelle selon le type de donnée) 5/3  1 5.1/3  1.7 ** élévation à la puissance 5**3  125 // division entière 5//3  1 % reste de la division entière 5%3  2 OPÉRATIONS ARITHMÉTIQUES  Remarquez que le # suivi d’un texte veut dire un commentaire. Le dièse informe Python que tout ce qui se trouve sur la même ligne après lui ne le concerne pas : il va donc simplement l’ignorer. """ Un commentaire sur plusieurs lignes que dans python """ 24 Imene Sghaier-Programmation Python
  • 13. 14/01/2018 13 OPÉRATIONS ARITHMÉTIQUES  Trois autres opérations : la division entière, le modulo et l’élévation à une puissance. Les deux premières correspondent au quotient et au reste des divisions que l’on posait à la main.  Le quotient  Le reste de la division  La puissance 25 Imene Sghaier-Programmation Python OPÉRATIONS ARITHMÉTIQUES  Sous Python 3, l’opérateur de division / effectue une division réelle. Si vous souhaitez obtenir une division, vous devez utiliser l’opérateur //. Notez bien que ceci est l’un des changements de syntaxe apportés à la version 3 de Python, par rapport aux versions précédentes.  Si vous utilisez l’une des anciennes, sachez que l’opérateur / y effectue par défaut une division entière, si on lui fournit des arguments qui sont eux-mêmes des entiers, et une division réelle, si au moins l’un des arguments est un réel.  Le caractère _ veut dire résultat de la dernière commande 26 Imene Sghaier-Programmation Python
  • 14. 14/01/2018 14 OPÉRATIONS ARITHMÉTIQUES: PRIORITÉ  Python suit l’ordre conventionnel de priorité des opérations mathématiques : 1- L’élévation à la puissance 2- La multiplication 3- La division, 4- L’addition et la soustraction  Vous pouvez néanmoins changer cet ordre en utilisant des parenthèses pour donner la priorité à une opération, comme en mathématiques. 27 Imene Sghaier-Programmation Python OPERATEURS DE COMPARAISON 28 Imene Sghaier-Programmation Python
  • 15. 14/01/2018 15 LES OPÉRATEURS LOGIQUES  Les opérateurs logiques sont applicables sur des booléens (True et False) 29 Imene Sghaier-Programmation Python COMBINAISON D’INSTRUCTIONS 30 Imene Sghaier-Programmation Python  Si vous savez comment additionner deux nombres et comment afficher une valeur, vous pouvez combiner ces deux instructions en une seule:  Cela n’a l’air de rien, mais cette fonctionnalité qui paraît si évidente va vous permettre de programmer des algorithmes complexes de façon claire et concise.  Il est interdit d’utiliser une variable non initialisée dans une expression
  • 16. 14/01/2018 16 SÉQUENCE D’INSTRUCTIONS 31 Imene Sghaier-Programmation Python  Sauf mention explicite, les instructions d’un programme s’exécutent les unes après les autres, dans l’ordre où elles ont été écrites à l’intérieur du script.  Cette affirmation peut vous paraître banale et évidente à première vue. L’expérience montre cependant qu’un grand nombre d’erreurs sémantiques dans les programmes d’ordinateur sont la conséquence d’une mauvaise disposition des instructions.  On peut effectuer une exécution séquentielle d’un ensemble de commandes écrites sur une même ligne: FONCTIONS INTÉGRÉES 32 Imene Sghaier-Programmation Python  Pour interagir avec python on tape des commandes appelées aussi des builtins, ce sont des commandes prêtes à l’utilisation et qui sont chargées automatiquement en mémoire de l’ordinateur (car on ne peut pas utiliser une commande qui n’est pas déjà en mémoire centrale)  Valeur absolue  Conversion de type
  • 17. 14/01/2018 17 FONCTIONS INTÉGRÉES 33 Imene Sghaier-Programmation Python  Identifiant de variable  Chaque variable possède un identifiant accessible via la commande id  Comparaison d’identifiant  La commande is permet de vérifier si deux variables possèdent le même identifiant FONCTIONS INTÉGRÉES 34 Imene Sghaier-Programmation Python  Passage entre bases binaire, hexadécimale, octale  Fonctions mathématiques  Puissance  div et mod (quotient et reste)  Minimum et maximum  Arrondi
  • 18. 14/01/2018 18 FONCTIONS INTÉGRÉES 35 Imene Sghaier-Programmation Python  Fonctions mathématiques  Nombres complexes  Codes ascii  Caractères FONCTIONS INTÉGRÉES  La fonction type permet de voir le type d’une expression  Opérateurs avancés d’affectation 36 Imene Sghaier-Programmation Python
  • 19. 14/01/2018 19 MODULE MATH  Python regroupe les commandes par thèmes dans des unités appelées modules  Un module regroupe un ensemble de variable et de fonctions prêtes à l’utilisation  Il suffit d’importer le module avec le mot clès import et d’appeler la fonction voulue en la préfixant par le nom_module. 37 Imene Sghaier-Programmation Python MODULE MATH  Le contenu d’un module peut être vu en utilisant la commande dir(nomModule) 38 Imene Sghaier-Programmation Python
  • 20. 14/01/2018 20 MODULE MATH  L’aide d’un module peut être affichée en utilisant la commande help(nomModule)  Comme ça vous pourrez voir les différentes fonctions d’un module ^_^  Le module cmath offre toutes les fonctions mathématiques applicables sur les nombres complexes 39 Imene Sghaier-Programmation Python L’OBJET NONE  L’objet None est utilisé pour représenter l’absence de valeur.  Il est similaire à l’objet null dans d’autres langages de programmation (java par exemple)  Comme d’autre valeurs vides par exemple 0, [] et la chaîne de caractères vide, il est égal à False quand il est convertit en boolean 40 Imene Sghaier-Programmation Python