Académique Documents
Professionnel Documents
Culture Documents
Stéphane Guinard
Stéphane Guinard
v1.1.0
19/10/2018
Python
Présentation
du module
Présentation
de Python
Types et
Opérations
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Présentation
du module
Présentation
de Python
1 Présentation du module 5 Modules et fonctions
Types et
Opérations
Conclusion
References 4 Syntaxe
IPrésentation
du module
Présentation
de Python
1 Présentation du module 5 Modules et fonctions
Types et
Opérations
Conclusion
References 4 Syntaxe
IPrésentation
du module
Présentation
de Python
• Comprendre les bases de Python et son intérêt
Types et
Opérations
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
IPrésentation
du module
Présentation
de Python
• Comprendre les bases de Python et son intérêt
Types et
Opérations • Savoir manipuler différents types de données
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
IPrésentation
du module
Présentation
de Python
• Comprendre les bases de Python et son intérêt
Types et
Opérations • Savoir manipuler différents types de données
Syntaxe
• Savoir créer un programme complet en Python
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
IPrésentation
du module
Présentation
de Python
• Comprendre les bases de Python et son intérêt
Types et
Opérations • Savoir manipuler différents types de données
Syntaxe
• Savoir créer un programme complet en Python
Modules et
fonctions • Prendre des bonnes habitudes de programmation
Fichiers et
itérateurs
(commentaires, documentation, organisation du code, . . .)
Conclusion
References
IPrésentation
du module
Présentation
de Python
• Comprendre les bases de Python et son intérêt
Types et
Opérations • Savoir manipuler différents types de données
Syntaxe
• Savoir créer un programme complet en Python
Modules et
fonctions • Prendre des bonnes habitudes de programmation
Fichiers et
itérateurs
(commentaires, documentation, organisation du code, . . .)
Conclusion ⇒ Maı̂triser un premier langage informatique.
References
IPrésentation
du module 7 séances
Présentation
de Python • 19/10 aprem : cours théorique
Types et
Opérations
• 24/10 aprem : TP
Syntaxe • 25/10 matin : TP
Modules et
fonctions
• 26/10 aprem : cours + TP
Fichiers et • 06/11 aprem : TP
itérateurs
Conclusion
• 13/11 aprem : TP
References • 16/11 aprem : TP
• 28/11 matin : évaluation
IPrésentation
du module
Présentation
de Python
3 groupes avec chacun 1 encadrant.
Types et
Opérations
Syntaxe
Encadrement :
Modules et • Mohamed Boussaha
fonctions
Fichiers et
• Victor Coindet
itérateurs
• Stéphane Guinard
Conclusion
References
IPrésentation
du module
Présentation
de Python
Types et
Opérations
TP noté (29/11 matin)
42
Syntaxe sur machines
Modules et
fonctions
individuel
Fichiers et accès au cours
itérateurs
Conclusion
References
Présentation
du module
IPrésentation
de Python
Historique
1 Présentation du module 5 Modules et fonctions
Caractéristiques
du langage
Exécution
Syntaxe
Modules et
3 Types et Opérations 7 Conclusion
fonctions
Fichiers et
itérateurs 4 Syntaxe
Conclusion
References
Présentation
du module
Présentation
1 Présentation du module 5 Modules et fonctions
de Python
IHistorique
Caractéristiques
du langage 2 Présentation de Python 6 Fichiers et itérateurs
Exécution
Types et
Historique
Opérations Caractéristiques du langage 7 Conclusion
Syntaxe
Exécution
Modules et
fonctions
Conclusion
References 4 Syntaxe
Présentation
du module
Présentation
de Python
IHistorique
Caractéristiques
du langage
Exécution
Types et
Opérations
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
Guido van Rossum
References
—
Présentation • Milieu des années 80 :
du module
développement d’ABC
Présentation
de Python
CWI
IHistorique
Caractéristiques
du langage
Exécution
Types et
Opérations
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
Guido van Rossum
References
—
Présentation • Milieu des années 80 :
du module
développement d’ABC
Présentation CWI
de Python • Février 1991 : version 0.9.0
IHistorique
Caractéristiques
du langage
Exécution
Types et
Opérations
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
Guido van Rossum
References
—
Présentation • Milieu des années 80 :
du module
développement d’ABC
Présentation CWI
de Python • Février 1991 : version 0.9.0
IHistorique
Caractéristiques
du langage • 1995 : version 1.2
Exécution
Types et
Opérations
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
Guido van Rossum
References
—
Présentation • Milieu des années 80 :
du module
développement d’ABC
Présentation CWI
de Python • Février 1991 : version 0.9.0
IHistorique
Caractéristiques
du langage • 1995 : version 1.2 —
Exécution
Types et
• 1999 : version 1.6 CNRI
Opérations
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
Guido van Rossum
References
—
Présentation • Milieu des années 80 :
du module
développement d’ABC
Présentation CWI
de Python • Février 1991 : version 0.9.0
IHistorique
Caractéristiques
du langage • 1995 : version 1.2 —
Exécution
Types et
• 1999 : version 1.6 CNRI
Opérations —
• 2000 : version 2.0
Syntaxe
Modules et
fonctions
Fichiers et PSF
itérateurs
Conclusion
Guido van Rossum
References
—
Présentation • Milieu des années 80 :
du module
développement d’ABC
Présentation CWI
de Python • Février 1991 : version 0.9.0
IHistorique
Caractéristiques
du langage • 1995 : version 1.2 —
Exécution
Types et
• 1999 : version 1.6 CNRI
Opérations —
• 2000 : version 2.0
Syntaxe
Fichiers et PSF
itérateurs
Conclusion
Guido van Rossum
References
—
Présentation • Milieu des années 80 :
du module
développement d’ABC
Présentation CWI
de Python • Février 1991 : version 0.9.0
IHistorique
Caractéristiques
du langage • 1995 : version 1.2 —
Exécution
Types et
• 1999 : version 1.6 CNRI
Opérations —
• 2000 : version 2.0
Syntaxe
Fichiers et
• 2010 : version 2.7 PSF
itérateurs
Conclusion
Guido van Rossum
References
—
Présentation • Milieu des années 80 :
du module
développement d’ABC
Présentation CWI
de Python • Février 1991 : version 0.9.0
IHistorique
Caractéristiques
du langage • 1995 : version 1.2 —
Exécution
Types et
• 1999 : version 1.6 CNRI
Opérations —
• 2000 : version 2.0
Syntaxe
Fichiers et
• 2010 : version 2.7 PSF
itérateurs
• 2015 : version 3.5
Conclusion
• Aujourd’hui : versions 2.7.15 et Guido van Rossum
References
3.7.0
Présentation
du module
Présentation
de Python
IHistorique
Caractéristiques
du langage
Exécution
Types et
Opérations
LGPL (Lesser GNU Public Licence)
Syntaxe Les outils Python peuvent être utilisés sans restriction pour
Modules et produire des logiciels de tous types, même si ceux-ci sont
fonctions
Fichiers et
distribués avec une licence plus restrictive que la GPL.
itérateurs
Conclusion
References
Présentation
du module
Présentation
1 Présentation du module 5 Modules et fonctions
de Python
Historique
ICaractéristiques
du langage 2 Présentation de Python 6 Fichiers et itérateurs
Exécution
Types et
Historique
Opérations Caractéristiques du langage 7 Conclusion
Syntaxe
Exécution
Modules et
fonctions
Conclusion
References 4 Syntaxe
Présentation
du module Python est :
Présentation
de Python • portable
Historique
ICaractéristiques
du langage • orienté objet et fonctionnel
Exécution
Modules et • associable
fonctions
Fichiers et
• facile à lire et à écrire
itérateurs
• haut niveau
Conclusion
References
• a une communauté active
Présentation
du module
Présentation
de Python
Langage interprété
Historique
ICaractéristiques
Langage qui n’a pas besoin d’être compilé, et peut être
du langage
Exécution directement exécuté sur une machine compatible.
Types et Leurs performances sont souvent moins bonnes que celles des
Opérations
Syntaxe
langages compilés.
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Présentation
du module
Présentation
de Python
Langage interprété
Historique
ICaractéristiques
Langage qui n’a pas besoin d’être compilé, et peut être
du langage
Exécution directement exécuté sur une machine compatible.
Types et Leurs performances sont souvent moins bonnes que celles des
Opérations
Syntaxe
langages compilés.
Modules et
fonctions
References
Présentation
du module
Présentation
de Python Orienté Objet
Historique
ICaractéristiques
du langage
Il est possible de créer des objets et d’appliquer des concepts
Exécution
avancés comme le polymorphisme ou l’héritage.
Types et
Opérations
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Présentation
du module
Présentation
de Python Orienté Objet
Historique
ICaractéristiques
du langage
Il est possible de créer des objets et d’appliquer des concepts
Exécution
avancés comme le polymorphisme ou l’héritage.
Types et
Opérations
Syntaxe Fonctionnel
Modules et
fonctions Python perçoit les instructions comme un ensemble de fonctions
Fichiers et mathématiques à exécuter.
itérateurs
Conclusion
References
Présentation
du module
Types et
Opérations
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Présentation
du module
Types et
Python C++ / Java
Opérations
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Présentation Exécution
du module
Types et
Opérations
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Présentation Exécution
du module
Types et
Opérations
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs Garbage collector
Conclusion
Libère de l’espace mémoire pendant l’exécution afin de
References
l’optimiser.
Présentation
du module
Modules et
• Perl : PyPerl
fonctions
• PHP : PiP
Fichiers et
itérateurs • R : RPy
Conclusion
References
Types et
Opérations
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Types et
Opérations
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Types et
Opérations Python est reconnu comme l’un des meilleurs langages pour
Syntaxe apprendre à programmer.
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Présentation
du module
Présentation
de Python
Historique
ICaractéristiques
du langage
• Pas besoin de se soucier du matériel utilisé.
Exécution
Types et
Opérations
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Présentation
du module
Présentation
de Python
Historique
ICaractéristiques
du langage
• Pas besoin de se soucier du matériel utilisé.
Exécution
Types et
• Pas besoin de gérer la mémoire.
Opérations
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Présentation
du module
Présentation
de Python
Historique
ICaractéristiques
du langage
• Pas besoin de se soucier du matériel utilisé.
Exécution
Types et
• Pas besoin de gérer la mémoire.
Opérations
• Proche du langage naturel.
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Présentation
du module
Présentation
de Python
Historique
ICaractéristiques
du langage
• Pas besoin de se soucier du matériel utilisé.
Exécution
Types et
• Pas besoin de gérer la mémoire.
Opérations
• Proche du langage naturel.
Syntaxe
Modules et
• Peut être moins efficace que des langages bas-niveau.
fonctions
Fichiers et
itérateurs
Conclusion
References
Présentation
du module
Présentation
Python est très utilisé :
de Python
Historique
ICaractéristiques
du langage
Exécution
Types et
Opérations
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Présentation
du module Communauté active sur Internet :
Présentation
de Python
Historique
ICaractéristiques
• Top 10 des tags les plus populaires
du langage
Exécution de StackOverflow
Types et
Opérations
• Wiki : wiki.python.org/
Syntaxe • De nombreux forums spécialisés :
Modules et python-forum.io/
fonctions
python-forum.org/
Fichiers et
itérateurs openclassrooms.com/
Conclusion
forum/categorie/langage-python
References
Présentation
du module
Présentation
1 Présentation du module 5 Modules et fonctions
de Python
Historique
Caractéristiques
du langage 2 Présentation de Python 6 Fichiers et itérateurs
IExécution
Types et
Historique
Opérations Caractéristiques du langage 7 Conclusion
Syntaxe
Exécution
Modules et
fonctions
Conclusion
References 4 Syntaxe
Présentation
du module
Présentation
Lorsque l’on exécute un code Python, un programme lit le code
de Python et exécute les instructions qu’il contient. Ce programme est
Historique
Caractéristiques
du langage
appelé un interpréteur Python.
IExécution
Types et
Opérations
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Présentation
du module
Présentation
Lorsque l’on exécute un code Python, un programme lit le code
de Python et exécute les instructions qu’il contient. Ce programme est
Historique
Caractéristiques
du langage
appelé un interpréteur Python.
IExécution
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Présentation
du module
Présentation
Lorsque l’on exécute un code Python, un programme lit le code
de Python et exécute les instructions qu’il contient. Ce programme est
Historique
Caractéristiques
du langage
appelé un interpréteur Python.
IExécution
Modules et
fonctions
Attention
Fichiers et Plusieurs versions de Python peuvent cohabiter sur une même
itérateurs
machine.
Conclusion
References
Types et
Opérations
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Types et
Opérations
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Types et
Opérations
Syntaxe
Fichiers et
L’exécution est plus rapide que pour un langage interprété
itérateurs classique car la machine virtuelle n’a pas besoin de ré-analyser et
Conclusion de re-parser le code. Cependant il reste plus lent que les langages
References
compilés car la PVM doit interpréter le Bytecode.
Terminal
Présentation
du module
Présentation
de Python
Historique
Caractéristiques
du langage
IExécution
Types et
Opérations
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Terminal
Présentation
du module
Présentation
de Python
Historique
Caractéristiques
du langage
Environnements de développement
IExécution
Types et
Opérations
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Verbose mode
Présentation
du module
Présentation
de Python
1 Présentation du module 5 Modules et fonctions
ITypes et
Opérations
Types
Les types
numériques
2 Présentation de Python 6 Fichiers et itérateurs
Booléens
Type “rien”
Chaı̂nes de
caractères
Séquences
3 Types et Opérations 7 Conclusion
Dictionnaires
Ensembles
Syntaxe 4 Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 28 / 169 v1.1.0
Déroulement de la présentation
Présentation
1 Présentation du module 5 Modules et fonctions
du module
Présentation
de Python 2 Présentation de Python 6 Fichiers et itérateurs
Types et
Opérations
ITypes 3 Types et Opérations 7 Conclusion
Les types
numériques
Booléens
Types
Type “rien”
Chaı̂nes de
Les types numériques
caractères
Séquences Booléens
Dictionnaires
Ensembles Type “rien”
Syntaxe Chaı̂nes de caractères
Modules et
fonctions
Séquences
Fichiers et
Dictionnaires
itérateurs
Ensembles
Conclusion
References
Syntaxe
4 Python
Cours Intro 19/10/2018 29 / 169 v1.1.0
Variable
Présentation
du module
Présentation
de Python Définition
Types et Association d’un nom et d’une valeur. Elle est stockée en binaire
Opérations
ITypes dans la mémoire de l’ordinateur. Le nom permet à l’ordinateur de
Les types
numériques
Booléens
savoir quelle donnée manipuler.
Type “rien”
Chaı̂nes de
caractères
Séquences
Dictionnaires
Ensembles
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 30 / 169 v1.1.0
Variable
Présentation
du module
Présentation
de Python Définition
Types et Association d’un nom et d’une valeur. Elle est stockée en binaire
Opérations
ITypes dans la mémoire de l’ordinateur. Le nom permet à l’ordinateur de
Les types
numériques
Booléens
savoir quelle donnée manipuler.
Type “rien”
Chaı̂nes de
caractères
Séquences
Dictionnaires
La programmation consiste essentiellement à manipuler des
Ensembles données stockées en binaire dans la mémoire de l’ordinateur.
Syntaxe
Pour y accéder, on utilisera des variables.
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 30 / 169 v1.1.0
Nom
Présentation
Le nom d’une variable est composé de :
du module
• Lettres
Présentation
de Python
• Chiffres
Types et
Opérations • Blancs soulignés
ITypes
Les types
numériques
Booléens
Type “rien”
Chaı̂nes de
caractères
Séquences
Dictionnaires
Ensembles
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 31 / 169 v1.1.0
Nom
Présentation
Le nom d’une variable est composé de :
du module
• Lettres
Présentation
de Python
• Chiffres
Types et
Opérations • Blancs soulignés
ITypes
Les types
numériques
Booléens Interdictions
Type “rien”
Chaı̂nes de
caractères
Pas d’espaces
Séquences
Dictionnaires Pas de caractères spéciaux (çà)
Ensembles
Conclusion
References
Cours Intro Python 19/10/2018 31 / 169 v1.1.0
Conventions de nommage
Présentation
Dans un même code, il vous faudra être cohérent sur la notation :
du module
Présentation
de Python
Types et
Opérations
ITypes
Les types
numériques
Booléens
Type “rien”
Chaı̂nes de
caractères
Séquences
Dictionnaires
Ensembles
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 32 / 169 v1.1.0
Conventions de nommage
Présentation
Dans un même code, il vous faudra être cohérent sur la notation :
du module
Présentation
de Python • exemple :
Types et noms de variables
Opérations
ITypes
NomsDeFonctions
Les types
numériques • notation hongroise
Booléens
Type “rien”
Chaı̂nes de
caractères
Séquences
Dictionnaires
Ensembles
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 32 / 169 v1.1.0
Conventions de nommage
Présentation
Dans un même code, il vous faudra être cohérent sur la notation :
du module
Présentation
de Python • exemple :
Types et noms de variables
Opérations
ITypes
NomsDeFonctions
Les types
numériques • notation hongroise
Booléens
Type “rien”
Chaı̂nes de
caractères
Séquences Les variables commençant et finissant par “ ” sont
Dictionnaires
Ensembles traditionnellement réservées au langage.
Syntaxe
• name
Modules et
fonctions
• str
Fichiers et
itérateurs • main
Conclusion
References
Cours Intro Python 19/10/2018 32 / 169 v1.1.0
Mots réservés au langage
Présentation
portant l’un de ces noms.
de Python
Types et
Opérations
ITypes
Les types
numériques
Booléens
Type “rien”
Chaı̂nes de
caractères
Séquences
Dictionnaires
Ensembles
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 33 / 169 v1.1.0
Mots réservés au langage
Présentation
portant l’un de ces noms.
de Python
References
Cours Intro Python 19/10/2018 33 / 169 v1.1.0
Type
Présentation
du module
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 34 / 169 v1.1.0
Type
Présentation
du module
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 34 / 169 v1.1.0
Type
Présentation
du module
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 34 / 169 v1.1.0
Type
Présentation
du module
Conclusion
References
Cours Intro Python 19/10/2018 34 / 169 v1.1.0
Types
Exemple : x = 3
Présentation
du module
Présentation
de Python
Types et
Opérations
ITypes
Les types
numériques
Booléens
Type “rien”
Chaı̂nes de
caractères
Séquences
Dictionnaires
Ensembles
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 35 / 169 v1.1.0
Types
Exemple : x = 3
Présentation
du module
• Création d’un objet représentant la valeur 3
Présentation • Création d’une variable x, si elle n’existe pas déjà
de Python
Types et
• Association de la variable x à l’objet 3
Opérations
ITypes
Les types
numériques
Booléens
Type “rien”
Chaı̂nes de
caractères
Séquences
Dictionnaires
Ensembles
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 35 / 169 v1.1.0
Types et variables
Présentation
du module
En Python, une variable n’est jamais associée à un type : c’est
Présentation
de Python l’objet qu’elle référence qui porte le type.
Types et
Opérations
ITypes
Les types
numériques
Booléens
Type “rien”
Chaı̂nes de
caractères
Séquences
Dictionnaires
Ensembles
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 36 / 169 v1.1.0
Types et variables
Présentation
du module
En Python, une variable n’est jamais associée à un type : c’est
Présentation
de Python l’objet qu’elle référence qui porte le type.
Types et
Opérations
ITypes
Les types
numériques
Booléens
Type “rien”
Chaı̂nes de
caractères
Séquences
Dictionnaires
Ensembles
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 36 / 169 v1.1.0
Garbage collector
Définition
Présentation
du module
Python garde un objet en mémoire tant qu’il y a une référence
Présentation vers cet objet. Lorsque l’objet n’est plus référencé, un garbage
de Python
collector est appelé pour effacer cet objet de la mémoire.
Types et
Opérations
ITypes
Les types
numériques
Booléens
Type “rien”
Chaı̂nes de
caractères
Séquences
Dictionnaires
Ensembles
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 37 / 169 v1.1.0
Garbage collector
Définition
Présentation
du module
Python garde un objet en mémoire tant qu’il y a une référence
Présentation vers cet objet. Lorsque l’objet n’est plus référencé, un garbage
de Python
collector est appelé pour effacer cet objet de la mémoire.
Types et
Opérations
ITypes
Les types
numériques
Booléens
Type “rien”
Chaı̂nes de
caractères
Séquences
Dictionnaires
Ensembles
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 37 / 169 v1.1.0
Types de base
Type Exemple
Présentation
Nombre 3, 1.12, -152.36941
du module Chaı̂ne de caractères “ensg”, “toto titi”
Présentation
de Python
Liste [1,2,3], [“a”,“b”,“c”], [1,“fzi”,452.2]
Types et
Tuple (1,2,3), (“a”,“b”,“c”)
Opérations
ITypes
Collection {1.1,“abcde”,(1,2,3)}
Les types
numériques Dictionnaire 1:“a”, 2:“b”
Booléens
Type “rien” Booléen True, False
Chaı̂nes de
caractères Rien None
Séquences
Dictionnaires
Ensembles
Syntaxe
Modules et
fonctions
Vous en voulez
Fichiers et
plus ? Verbose mode
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 38 / 169 v1.1.0
Déroulement de la présentation
Présentation
1 Présentation du module 5 Modules et fonctions
du module
Présentation
de Python 2 Présentation de Python 6 Fichiers et itérateurs
Types et
Opérations
Types 3 Types et Opérations 7 Conclusion
ILes types
numériques
Booléens
Types
Type “rien”
Chaı̂nes de
Les types numériques
caractères
Séquences Booléens
Dictionnaires
Ensembles Type “rien”
Syntaxe Chaı̂nes de caractères
Modules et
fonctions
Séquences
Fichiers et
Dictionnaires
itérateurs
Ensembles
Conclusion
References
Syntaxe
4 Python
Cours Intro 19/10/2018 39 / 169 v1.1.0
Types numériques
Présentation
du module
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 40 / 169 v1.1.0
Opérations
Présentation
du module
Les opérations suivantes sont valables pour les types numériques :
Présentation
de Python
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 41 / 169 v1.1.0
Int et float
Présentation >>> a = 3
de Python
>>> type(a)
Types et
Opérations
<class ’int’>
Types >>> float(a)
ILes types
numériques 3.0
Booléens
Type “rien”
>>> type(a)
Chaı̂nes de
caractères
<class ’int’>
Séquences
Dictionnaires
Ensembles
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 42 / 169 v1.1.0
Int et float
Présentation >>> a = 3
de Python
>>> type(a)
Types et
Opérations
<class ’int’>
Types >>> float(a)
ILes types
numériques 3.0
Booléens
Type “rien”
>>> type(a)
Chaı̂nes de
caractères
<class ’int’>
Séquences
Dictionnaires
Ensembles Si 2 types sont mélangés dans une même expression
Syntaxe
mathématique, Python va automatiquement convertir le résultat
Modules et
fonctions vers le plus “complexe” des 2 types.
Fichiers et
itérateurs >>> type(1+3.57654)
Conclusion <class ’float’>
References
Cours Intro Python 19/10/2018 42 / 169 v1.1.0
Nombres complexes
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 43 / 169 v1.1.0
Nombres complexes
Présentation
de Python
Types et
Opérations
Types
ILes types
numériques
Booléens
Type “rien”
Chaı̂nes de
caractères
Séquences
Dictionnaires
Ensembles
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 44 / 169 v1.1.0
Decimal
Présentation Float :
de Python
>>> 0.1 + 0.1 + 0.1 - 0.3
Types et
Opérations 5.551115123125783e-17
Types
ILes types
numériques
Booléens
Type “rien”
Chaı̂nes de
caractères
Séquences
Dictionnaires
Ensembles
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 44 / 169 v1.1.0
Decimal
Présentation Float :
de Python
>>> 0.1 + 0.1 + 0.1 - 0.3
Types et
Opérations 5.551115123125783e-17
Types
ILes types
numériques Decimal :
Booléens
Type “rien”
Chaı̂nes de
>>> print(Decimal(’0.1’) + Decimal(’0.1’) + Decimal(’0.1’
caractères ) - Decimal(’0.3’))
Séquences
Dictionnaires 0.0
Ensembles
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 44 / 169 v1.1.0
Decimal
Présentation Float :
de Python
>>> 0.1 + 0.1 + 0.1 - 0.3
Types et
Opérations 5.551115123125783e-17
Types
ILes types
numériques Decimal :
Booléens
Type “rien”
Chaı̂nes de
>>> print(Decimal(’0.1’) + Decimal(’0.1’) + Decimal(’0.1’
caractères ) - Decimal(’0.3’))
Séquences
Dictionnaires 0.0
Ensembles
Syntaxe
Précision Decimal
Modules et
fonctions La précision du type “Decimal” n’est pas absolue non plus !
Fichiers et
itérateurs >>> print(Decimal(0.1))
Conclusion 0.1000000000000000055511151231257827021181583404541015625
References
Cours Intro Python 19/10/2018 44 / 169 v1.1.0
Fraction
Présentation
du module
Python possède un dernier type numérique : “Fraction”. Il
Présentation fonctionne de façon similaire au type “Decimal” et permet de
de Python
gérer avec précision les fractions.
Types et
Opérations
Types
ILes types
numériques
Booléens
Type “rien”
Chaı̂nes de
caractères
Séquences
Dictionnaires
Ensembles
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 45 / 169 v1.1.0
Fraction
Présentation
du module
Python possède un dernier type numérique : “Fraction”. Il
Présentation fonctionne de façon similaire au type “Decimal” et permet de
de Python
gérer avec précision les fractions.
Types et
Opérations
Types
ILes types
• Sans “Fraction”:
numériques
Booléens
Type “rien”
>>> 1/6 + 1/2
Chaı̂nes de
caractères
0.6666666666666666
Séquences
Dictionnaires
Ensembles • Avec “Fraction”:
Syntaxe
>>> print(Fraction(1,6)+Fraction(1,2))
Modules et
fonctions
2/3
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 45 / 169 v1.1.0
Déroulement de la présentation
Présentation
1 Présentation du module 5 Modules et fonctions
du module
Présentation
de Python 2 Présentation de Python 6 Fichiers et itérateurs
Types et
Opérations
Types 3 Types et Opérations 7 Conclusion
Les types
numériques
IBooléens
Types
Type “rien”
Chaı̂nes de
Les types numériques
caractères
Séquences Booléens
Dictionnaires
Ensembles Type “rien”
Syntaxe Chaı̂nes de caractères
Modules et
fonctions
Séquences
Fichiers et
Dictionnaires
itérateurs
Ensembles
Conclusion
References
Syntaxe
4 Python
Cours Intro 19/10/2018 46 / 169 v1.1.0
Booléens
Définition
Présentation
du module Il s’agit d’objets valant soit “True” soit “False”.
Présentation
de Python
Types et
Opérations
Types
Les types
numériques
IBooléens
Type “rien”
Chaı̂nes de
caractères
Séquences
Dictionnaires
Ensembles
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 47 / 169 v1.1.0
Booléens
Définition
Présentation
du module Il s’agit d’objets valant soit “True” soit “False”.
Présentation
de Python
Types et Remarque
Opérations
Types Pendant longtemps ce type n’existait pas et on utilisait les entiers
Les types
numériques
IBooléens
0 pour faux et 1 pour vrai. Ceci explique que les booléens
Type “rien”
Chaı̂nes de
fonctionnent à peu près de la même façon que les entiers.
caractères
Séquences
Dictionnaires
Ensembles
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 47 / 169 v1.1.0
Booléens
Définition
Présentation
du module Il s’agit d’objets valant soit “True” soit “False”.
Présentation
de Python
Types et Remarque
Opérations
Types Pendant longtemps ce type n’existait pas et on utilisait les entiers
Les types
numériques
IBooléens
0 pour faux et 1 pour vrai. Ceci explique que les booléens
Type “rien”
Chaı̂nes de
fonctionnent à peu près de la même façon que les entiers.
caractères
Séquences
Dictionnaires
Ensembles
>>> True + 1 >>> False == 0 >>> False is 0
Syntaxe 2 True False
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 47 / 169 v1.1.0
Booléens
Définition
Présentation
du module Il s’agit d’objets valant soit “True” soit “False”.
Présentation
de Python
Types et Remarque
Opérations
Types Pendant longtemps ce type n’existait pas et on utilisait les entiers
Les types
numériques
IBooléens
0 pour faux et 1 pour vrai. Ceci explique que les booléens
Type “rien”
Chaı̂nes de
fonctionnent à peu près de la même façon que les entiers.
caractères
Séquences
Dictionnaires
Ensembles
>>> True + 1 >>> False == 0 >>> False is 0
Syntaxe 2 True False
Modules et
fonctions
Fichiers et
Type booléen
itérateurs
Les booléens ne sont pas des nombres !
Conclusion
References
Cours Intro Python 19/10/2018 47 / 169 v1.1.0
Opérations
Présentation
du module Opérations renvoyant des booléens :
Présentation
de Python
Opérateur Signification
Types et
Opérations > Supérieur
Types
Les types
< Inférieur
numériques
IBooléens >= Supérieur ou égal
Type “rien”
Chaı̂nes de <= Inférieur ou égal
caractères
Séquences
Dictionnaires
== Égal
Ensembles
!= Différent
Syntaxe
is Identicité des objets
Modules et
fonctions is not Différence des objets
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 48 / 169 v1.1.0
Expressions
Expressions booléennes :
Présentation
du module
Opérateur Signification
Présentation
de Python X and Y Vrai si X et Y valent “True”
Types et
Opérations
X or Y Vrai si X ou Y vaut “True”
Types not X Vrai si X vaut “False”
Les types
numériques
IBooléens
Type “rien”
Chaı̂nes de
caractères
Séquences
Dictionnaires
Ensembles
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 49 / 169 v1.1.0
Expressions
Expressions booléennes :
Présentation
du module
Opérateur Signification
Présentation
de Python X and Y Vrai si X et Y valent “True”
Types et
Opérations
X or Y Vrai si X ou Y vaut “True”
Types not X Vrai si X vaut “False”
Les types
numériques
IBooléens
Type “rien” if (2<3): if (not 2<3):
Chaı̂nes de
caractères print(’toto’) print(’toto’)
Séquences
Dictionnaires
Ensembles toto
Syntaxe
References
Cours Intro Python 19/10/2018 49 / 169 v1.1.0
Déroulement de la présentation
Présentation
1 Présentation du module 5 Modules et fonctions
du module
Présentation
de Python 2 Présentation de Python 6 Fichiers et itérateurs
Types et
Opérations
Types 3 Types et Opérations 7 Conclusion
Les types
numériques
Booléens
Types
IType “rien”
Chaı̂nes de
Les types numériques
caractères
Séquences Booléens
Dictionnaires
Ensembles Type “rien”
Syntaxe Chaı̂nes de caractères
Modules et
fonctions
Séquences
Fichiers et
Dictionnaires
itérateurs
Ensembles
Conclusion
References
Syntaxe
4 Python
Cours Intro 19/10/2018 50 / 169 v1.1.0
None
Présentation
du module
Définition
Présentation Il existe un type en Python qui ne peut prendre que la valeur
de Python
“None”. Cela signifie que la variable en question ne contient rien.
Types et
Opérations
Types
Les types
numériques
Booléens
IType “rien”
Chaı̂nes de
caractères
Séquences
Dictionnaires
Ensembles
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 51 / 169 v1.1.0
None
Présentation
du module
Définition
Présentation Il existe un type en Python qui ne peut prendre que la valeur
de Python
“None”. Cela signifie que la variable en question ne contient rien.
Types et
Opérations
Types
Les types Utilisation
numériques
Booléens
IType “rien”
On l’utilise lorsque qu’une opération n’a pas de retour, ou pour
Chaı̂nes de
caractères vérifier que certaines parties du programme ont bien fonctionné.
Séquences
Dictionnaires
Ensembles
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 51 / 169 v1.1.0
None
Présentation
du module
Définition
Présentation Il existe un type en Python qui ne peut prendre que la valeur
de Python
“None”. Cela signifie que la variable en question ne contient rien.
Types et
Opérations
Types
Les types Utilisation
numériques
Booléens
IType “rien”
On l’utilise lorsque qu’une opération n’a pas de retour, ou pour
Chaı̂nes de
caractères vérifier que certaines parties du programme ont bien fonctionné.
Séquences
Dictionnaires
Ensembles
def test(x = None): >>> test()
Syntaxe
if (x == None): x not specified
Modules et
fonctions
print("x not specified")
else: >>> test(3)
Fichiers et
itérateurs print(x) 3
Conclusion
References
Cours Intro Python 19/10/2018 51 / 169 v1.1.0
Déroulement de la présentation
Présentation
1 Présentation du module 5 Modules et fonctions
du module
Présentation
de Python 2 Présentation de Python 6 Fichiers et itérateurs
Types et
Opérations
Types 3 Types et Opérations 7 Conclusion
Les types
numériques
Booléens
Types
Type “rien”
IChaı̂nes de
Les types numériques
caractères
Séquences Booléens
Dictionnaires
Ensembles Type “rien”
Syntaxe Chaı̂nes de caractères
Modules et
fonctions
Séquences
Fichiers et
Dictionnaires
itérateurs
Ensembles
Conclusion
References
Syntaxe
4 Python
Cours Intro 19/10/2018 52 / 169 v1.1.0
Type
Présentation
du module
Présentation
de Python
Types et
Opérations
En Python, il n’existe qu’un seul type de données contenant du
Types
Les types
texte : les chaı̂nes de caractères.
numériques
Booléens
Type “rien”
IChaı̂nes de
caractères
Séquences
Dictionnaires
Ensembles
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 53 / 169 v1.1.0
Type
Présentation
du module
Présentation
de Python
Types et
Opérations
En Python, il n’existe qu’un seul type de données contenant du
Types
Les types
texte : les chaı̂nes de caractères.
numériques
Booléens
Type “rien” Une chaı̂ne de caractères est définie comme une suite finie de
IChaı̂nes de
caractères caractères (lettres, chiffres, espaces, . . .) entre guillemets.
Séquences
Dictionnaires
Ensembles
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 53 / 169 v1.1.0
Guillemets
Présentation
du module
Une chaı̂ne de caractères s’écrit entre guillemets. On peut utiliser
Présentation
de Python indifféremment les simples ou doubles guillemets.
Types et
Opérations
Types
Les types
numériques
Booléens
Type “rien”
IChaı̂nes de
caractères
Séquences
Dictionnaires
Ensembles
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 54 / 169 v1.1.0
Guillemets
Présentation
du module
Une chaı̂ne de caractères s’écrit entre guillemets. On peut utiliser
Présentation
de Python indifféremment les simples ou doubles guillemets.
Types et
Opérations
Types >>> "toto" == ’toto’
Les types True
numériques
Booléens
Type “rien”
IChaı̂nes de
caractères
Séquences
Dictionnaires
Ensembles
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 54 / 169 v1.1.0
Guillemets
Présentation
du module
Une chaı̂ne de caractères s’écrit entre guillemets. On peut utiliser
Présentation
de Python indifféremment les simples ou doubles guillemets.
Types et
Opérations
Types >>> "toto" == ’toto’
Les types True
numériques
Booléens
Type “rien”
IChaı̂nes de
caractères L’intérêt est de pouvoir introduire des apostrophes ou des
Séquences
Dictionnaires guillemets à l’intérieur de la chaı̂ne de caractères.
Ensembles
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 54 / 169 v1.1.0
Guillemets
Présentation
du module
Une chaı̂ne de caractères s’écrit entre guillemets. On peut utiliser
Présentation
de Python indifféremment les simples ou doubles guillemets.
Types et
Opérations
Types >>> "toto" == ’toto’
Les types True
numériques
Booléens
Type “rien”
IChaı̂nes de
caractères L’intérêt est de pouvoir introduire des apostrophes ou des
Séquences
Dictionnaires guillemets à l’intérieur de la chaı̂ne de caractères.
Ensembles
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 54 / 169 v1.1.0
Antislash
Présentation
de Python
Types et
Opérations
Types
Les types
numériques
Booléens
Type “rien”
IChaı̂nes de
caractères
Séquences
Dictionnaires
Ensembles
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 55 / 169 v1.1.0
Antislash
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 55 / 169 v1.1.0
Antislash
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 56 / 169 v1.1.0
Raw string
Conclusion
References
Cours Intro Python 19/10/2018 56 / 169 v1.1.0
Mise en page
Présentation
du module
Python propose aussi une syntaxe afin de garder la mise en page
Présentation
d’une chaı̂ne de caractères. Il faut que celle-ci commence et
de Python
finisse par 3 guillemets.
Types et
Opérations
Types
Les types
numériques
Booléens
Type “rien”
IChaı̂nes de
caractères
Séquences
Dictionnaires
Ensembles
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 57 / 169 v1.1.0
Mise en page
Présentation
du module
Python propose aussi une syntaxe afin de garder la mise en page
Présentation
d’une chaı̂ne de caractères. Il faut que celle-ci commence et
de Python
finisse par 3 guillemets.
Types et
Opérations
Types >>> print("""ceci est une ligne
Les types
numériques ceci est une autre ligne
Booléens
Type “rien”
IChaı̂nes de
caractères ceci est une tabulation""")
Séquences
Dictionnaires
Ensembles ceci est une ligne
Syntaxe ceci est une autre ligne
Modules et
fonctions ceci est une tabulation
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 57 / 169 v1.1.0
Opérations
Présentation
du module
Présentation
Voici la liste des opérations utilisables sur des chaı̂nes de
de Python caractères :
Types et
Opérations Opérateur Signification
Types
Les types
numériques
+ Concaténation
Booléens
Type “rien”
* Répétition
IChaı̂nes de
caractères in Inclusion d’une chaı̂ne dans une autre
Séquences
Dictionnaires not in Non-inclusion
Ensembles
Syntaxe
[i] i-ième caractère d’une chaı̂ne
Modules et
[i:j] Caractères entre la i-ième et la j-ième positions
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 58 / 169 v1.1.0
Fonctions courantes
Fonction Signification
Présentation
chaine.count(s) compte le nombre d’occurrences de “s”
du module chaine.find(s) retourne la position du premier “s” de
Présentation
de Python
la chaine, ou -1 s’il n’apparaı̂t pas
Types et
chaine.isalpha() retourne True si la chaı̂ne est
Opérations
Types
uniquement composée de lettres
Les types
numériques
chaine.isdigit() retourne True si la chaı̂ne est
Booléens
Type “rien”
uniquement composée de chiffres
IChaı̂nes de
caractères
chaine.replace(old,new) remplace toutes les occurrences de
Séquences
Dictionnaires
“old” par “new”
Ensembles chaine.split(sep) découpe la chaı̂ne au niveau de “sep”
Syntaxe
chaine.strip(s) supprime les espaces au début et à la
Modules et
fonctions fin de la chaı̂ne ainsi que les “s”
Fichiers et
chaine.upper() mets le texte en majuscule
itérateurs chaine.startwith(s) retourne True si la chaı̂ne commence
Conclusion
par “s”
References
Cours Intro Python 19/10/2018 59 / 169 v1.1.0
Formatage de texte
Présentation
Depuis la version 2.6, il existe 2 façons différentes de formater des
du module chaı̂nes de caractères :
Présentation
de Python
Types et
Opérations
Types
Les types
numériques
Booléens
Type “rien”
IChaı̂nes de
caractères
Séquences
Dictionnaires
Ensembles
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 60 / 169 v1.1.0
Formatage de texte
Présentation
Depuis la version 2.6, il existe 2 façons différentes de formater des
du module chaı̂nes de caractères :
Présentation
de Python
>>> "j’affiche la valeur %i" %(3)
Types et
Opérations "j’affiche la valeur 3"
Types
Les types
numériques >>> "j’affiche la valeur {}".format(3)
Booléens
Type “rien” "j’affiche la valeur 3"
IChaı̂nes de
caractères
Séquences
Dictionnaires
Ensembles
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 60 / 169 v1.1.0
Formatage de texte
Présentation
Depuis la version 2.6, il existe 2 façons différentes de formater des
du module chaı̂nes de caractères :
Présentation
de Python
>>> "j’affiche la valeur %i" %(3)
Types et
Opérations "j’affiche la valeur 3"
Types
Les types
numériques >>> "j’affiche la valeur {}".format(3)
Booléens
Type “rien” "j’affiche la valeur 3"
IChaı̂nes de
caractères
Séquences
Dictionnaires
Ensembles
Remarque
Syntaxe
Modules et
Ces méthodes ne sont pas strictement identiques, mais dans le
fonctions
cadre de notre cours, on pourra considérer qu’elles le sont.
Fichiers et Verbose mode
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 60 / 169 v1.1.0
Déroulement de la présentation
Présentation
1 Présentation du module 5 Modules et fonctions
du module
Présentation
de Python 2 Présentation de Python 6 Fichiers et itérateurs
Types et
Opérations
Types 3 Types et Opérations 7 Conclusion
Les types
numériques
Booléens
Types
Type “rien”
Chaı̂nes de
Les types numériques
caractères
ISéquences Booléens
Dictionnaires
Ensembles Type “rien”
Syntaxe Chaı̂nes de caractères
Modules et
fonctions
Séquences
Fichiers et
Dictionnaires
itérateurs
Ensembles
Conclusion
References
Syntaxe
4 Python
Cours Intro 19/10/2018 61 / 169 v1.1.0
Séquences
Présentation
du module
Présentation
de Python
Les séquences sont un ensemble de types de données, on y
Types et
retrouve :
Opérations
Types
Les types
numériques
Booléens
Type “rien”
Chaı̂nes de
caractères
ISéquences
Dictionnaires
Ensembles
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 62 / 169 v1.1.0
Séquences
Présentation
du module
Présentation
de Python
Les séquences sont un ensemble de types de données, on y
Types et
retrouve :
Opérations
Types
• list
Les types
numériques
Booléens
• tuples
Type “rien”
Chaı̂nes de • range
caractères
ISéquences
Dictionnaires
Ensembles
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 62 / 169 v1.1.0
Séquences
Présentation
du module
Présentation
de Python
Les séquences sont un ensemble de types de données, on y
Types et
retrouve :
Opérations
Types
• list
Les types
numériques
Booléens
• tuples
Type “rien”
Chaı̂nes de • range
caractères
ISéquences
Dictionnaires
Ensembles On peut également considérer les chaı̂nes de caractères comme
Syntaxe un type particulier de séquences.
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 62 / 169 v1.1.0
Généralités
Présentation
de Python
Types et
Opérations
Types
Les types
numériques
Booléens
Type “rien”
Chaı̂nes de
caractères
ISéquences
Dictionnaires
Ensembles
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 63 / 169 v1.1.0
Généralités
Types et
Opérations
Types
Les types
numériques
Booléens
Type “rien”
Chaı̂nes de
caractères
ISéquences
Dictionnaires
Ensembles
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 63 / 169 v1.1.0
Généralités
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 63 / 169 v1.1.0
Généralités
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 63 / 169 v1.1.0
Généralités
Opérateur Signification
Présentation
du module x in s x est dans s
Présentation x not in s x n’est pas dans s
de Python
s+t concaténation
Types et
Opérations s*n s ajouté n fois à lui-même
Types
Les types s[i] élément à la i-ième position
numériques
Booléens s[i:j] éléments de la i-ième place à la j-ième place
Type “rien”
Chaı̂nes de
caractères
s[i:j:k] éléments de la i-ième place à la j-ième place
ISéquences
Dictionnaires
avec un pas de k
Ensembles len(s) nombre d’éléments de s
Syntaxe
min(s) plus petit élément de s (si possible)
Modules et
fonctions sum(s) somme des éléments de s (si possible)
Fichiers et s.index(x,i,j) index de la première occurrence de x entre les
itérateurs
i+1 et j+1-ièmes éléments
Conclusion
References
Cours Intro Python 19/10/2018 64 / 169 v1.1.0
Catégories de séquences
Présentation
de Python
Types et
Opérations
Types
Les types
numériques
Booléens
Type “rien”
Chaı̂nes de
caractères
ISéquences
Dictionnaires
Ensembles
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 65 / 169 v1.1.0
Catégories de séquences
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 65 / 169 v1.1.0
Catégories de séquences
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 65 / 169 v1.1.0
Catégories de séquences
Conclusion
References
Cours Intro Python 19/10/2018 65 / 169 v1.1.0
Tuples
Présentation
du module
Présentation
Définition
de Python
Un tuple est un tableau d’objets de n’importe quel type. Les
Types et
Opérations tuples sont immuables.
Types
Les types
numériques
Booléens
Type “rien”
Chaı̂nes de
caractères
ISéquences
Dictionnaires
Ensembles
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 66 / 169 v1.1.0
Tuples
Présentation
du module
Présentation
Définition
de Python
Un tuple est un tableau d’objets de n’importe quel type. Les
Types et
Opérations tuples sont immuables.
Types
Les types
numériques
Booléens
Type “rien” >>> t = ("abcde", 12345, Decimal(2.35557))
Chaı̂nes de
caractères >>> t
ISéquences
Dictionnaires (’abcde’, 12345, Decimal(’
Ensembles 2.35557000000000016370904631912708282470703125’))
Syntaxe
Modules et
fonctions Les tuples sont toujours représentés avec des parenthèses.
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 66 / 169 v1.1.0
Remarques
Présentation
du module
Présentation
de Python • Il est possible d’imbriquer des tuples.
Types et
Opérations
Types
>>> t = (123, "abcde", 18.1)
Les types >>> t
numériques
Booléens (123, ’abcde’, 18.1)
Type “rien”
Chaı̂nes de
caractères
ISéquences
>>> u = (t, "xyz")
Dictionnaires >>> u
Ensembles
((123, ’abcde’, 18.1), ’xyz’)
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 67 / 169 v1.1.0
Remarques
Présentation
du module
Présentation
de Python • Pour créer un tuple vide, on l’initialise juste avec des
Types et parenthèses ou avec t = tuple().
Opérations
Types
Les types
numériques
Booléens
Type “rien”
Chaı̂nes de
caractères
ISéquences
Dictionnaires
>>> t = ()
Ensembles >>> t
Syntaxe ()
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 68 / 169 v1.1.0
Remarques
Présentation
du module
Présentation
de Python • Pour créer un tuple vide, on l’initialise juste avec des
Types et parenthèses ou avec t = tuple().
Opérations
Types
Les types
• Si un tuple ne contient qu’un élément il faut quand même
numériques
Booléens mettre une virgule sinon Python convertit le tuple en type de
Type “rien”
Chaı̂nes de son unique élément.
caractères
ISéquences
Dictionnaires
>>> t = () >>> t = (1) >>> t = (1,)
Ensembles >>> t >>> type(t) >>> t
Syntaxe () <class ’int’> (1,)
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 68 / 169 v1.1.0
Listes
Présentation
du module
Définition
Présentation
de Python Les listes sont similaires aux tuples, mais il est possible de
Types et
Opérations
modifier / ajouter / supprimer des éléments d’une liste sans créer
Types
Les types
un nouvel objet. Les listes sont modifiables.
numériques
Booléens
Type “rien”
Chaı̂nes de
caractères
ISéquences
Dictionnaires
Ensembles
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 69 / 169 v1.1.0
Listes
Présentation
du module
Définition
Présentation
de Python Les listes sont similaires aux tuples, mais il est possible de
Types et
Opérations
modifier / ajouter / supprimer des éléments d’une liste sans créer
Types
Les types
un nouvel objet. Les listes sont modifiables.
numériques
Booléens
Type “rien”
Chaı̂nes de
caractères >>> l = ["abcde", 12345, 3.14]
ISéquences
Dictionnaires >>> l
Ensembles
[’abcde’, 12345, 3.14]
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 69 / 169 v1.1.0
Listes
Présentation
du module
Définition
Présentation
de Python Les listes sont similaires aux tuples, mais il est possible de
Types et
Opérations
modifier / ajouter / supprimer des éléments d’une liste sans créer
Types
Les types
un nouvel objet. Les listes sont modifiables.
numériques
Booléens
Type “rien”
Chaı̂nes de
caractères >>> l = ["abcde", 12345, 3.14]
ISéquences
Dictionnaires >>> l
Ensembles
[’abcde’, 12345, 3.14]
Syntaxe
Modules et
fonctions Les listes sont représentées avec des crochets.
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 69 / 169 v1.1.0
Remarques
Présentation
du module
Présentation
de Python Similairement aux tuples :
Types et
Opérations
• Les listes sont imbriquables
Types
Les types
numériques
Booléens
Type “rien”
Chaı̂nes de
>>> l = ["abcde", 12345, 3.14]
caractères
ISéquences
>>> m = [l, 3.845]
Dictionnaires >>> m
Ensembles
[[’abcde’, 12345, 3.14], 3.845]
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 70 / 169 v1.1.0
Remarques
Présentation
du module
Présentation
de Python Similairement aux tuples :
Types et
Opérations
• Les listes sont imbriquables
Types
Les types • Une liste vide s’initialise avec des crochets ou avec l = list()
numériques
Booléens
Type “rien”
Chaı̂nes de
>>> l = ["abcde", 12345, 3.14]
caractères
>>> l = []
>>> m = [l, 3.845]
ISéquences >>> l
Dictionnaires >>> m
Ensembles []
[[’abcde’, 12345, 3.14], 3.845]
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 70 / 169 v1.1.0
Opérations
Présentation
du module
Présentation
Du fait de leurs caractères modifiables, les listes possèdent
de Python quelques opérateurs supplémentaires :
Types et
Opérations
Types
Opérateur Signification
Les types
numériques l[i] = x i-ième élément remplacé par x
Booléens
Type “rien” l[i:j] = m les éléments entre les positions i et j sont
Chaı̂nes de
caractères remplacés par la liste m
ISéquences
Dictionnaires del(L[i:j]) supprimes les éléments entre les positions i et j
Ensembles
Syntaxe
l += m ajoute la liste m à l
Modules et
l *= n ajoute n-1 fois l à elle-même
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 71 / 169 v1.1.0
Fonctions
Types et
l.append(x) ajoute x à la fin de l
Opérations l.extend(m) ajoute la liste m à la fin de l
Types
Les types
numériques
l.insert(i,x) insert x à la position i
Booléens
Type “rien”
l.remove(x) supprime tous les x dans l
Chaı̂nes de
caractères l.pop(i) retourne et supprime de la liste l’élément à
ISéquences
Dictionnaires la position i
Ensembles
l.clear() vide la liste
Syntaxe
l.reverse() inverse l’ordre des éléments
Modules et
fonctions l.copy() copie la liste
Fichiers et l.sort() trie les éléments de la liste par ordre croissant
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 72 / 169 v1.1.0
Ranges
Présentation
du module Définition
Présentation
de Python
Les ranges sont des séquences immuables de nombres entiers.
Types et
Elles sont définies à partir de bornes initiale, finale et d’un pas.
Opérations
Types
Les types
numériques
Booléens
Type “rien”
Chaı̂nes de
caractères
ISéquences
Dictionnaires
Ensembles
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 73 / 169 v1.1.0
Ranges
Présentation
du module Définition
Présentation
de Python
Les ranges sont des séquences immuables de nombres entiers.
Types et
Elles sont définies à partir de bornes initiale, finale et d’un pas.
Opérations
Types
Les types
La borne intiale par défaut est 0
numériques
Booléens Le pas par défaut est 1
Type “rien”
Chaı̂nes de
caractères Pour visualiser une range on la convertit en liste
ISéquences
Dictionnaires
Ensembles
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 73 / 169 v1.1.0
Ranges
Présentation
du module Définition
Présentation
de Python
Les ranges sont des séquences immuables de nombres entiers.
Types et
Elles sont définies à partir de bornes initiale, finale et d’un pas.
Opérations
Types
Les types
La borne intiale par défaut est 0
numériques
Booléens Le pas par défaut est 1
Type “rien”
Chaı̂nes de
caractères Pour visualiser une range on la convertit en liste
ISéquences
Dictionnaires
Ensembles
Conclusion
References
Cours Intro Python 19/10/2018 73 / 169 v1.1.0
Déroulement de la présentation
Présentation
1 Présentation du module 5 Modules et fonctions
du module
Présentation
de Python 2 Présentation de Python 6 Fichiers et itérateurs
Types et
Opérations
Types 3 Types et Opérations 7 Conclusion
Les types
numériques
Booléens
Types
Type “rien”
Chaı̂nes de
Les types numériques
caractères
Séquences Booléens
IDictionnaires
Ensembles Type “rien”
Syntaxe Chaı̂nes de caractères
Modules et
fonctions
Séquences
Fichiers et
Dictionnaires
itérateurs
Ensembles
Conclusion
References
4 Python
Cours Intro Syntaxe 19/10/2018 74 / 169 v1.1.0
Dictionnaires
Présentation
du module Définition
Présentation
de Python
Les dictionnaires sont semblables aux listes, mais sont différents
Types et
pour le référencement des valeurs. Au lieu d’associer un élément
Opérations
Types
à sa position, un dictionnaire lui associe une clé.
Les types
numériques
Booléens
Type “rien”
Chaı̂nes de
caractères
Séquences
IDictionnaires
Ensembles
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 75 / 169 v1.1.0
Dictionnaires
Présentation
du module Définition
Présentation
de Python
Les dictionnaires sont semblables aux listes, mais sont différents
Types et
pour le référencement des valeurs. Au lieu d’associer un élément
Opérations
Types
à sa position, un dictionnaire lui associe une clé.
Les types
numériques
Une clé est un élément de type immuable (entier, réel, chaı̂ne,
Booléens
Type “rien” tuple).
Chaı̂nes de
caractères
Séquences
IDictionnaires
Ensembles
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 75 / 169 v1.1.0
Dictionnaires
Présentation
du module Définition
Présentation
de Python
Les dictionnaires sont semblables aux listes, mais sont différents
Types et
pour le référencement des valeurs. Au lieu d’associer un élément
Opérations
Types
à sa position, un dictionnaire lui associe une clé.
Les types
numériques
Une clé est un élément de type immuable (entier, réel, chaı̂ne,
Booléens
Type “rien” tuple).
Chaı̂nes de
caractères
Séquences
IDictionnaires
Ensembles >>> dico = {"bleu": "0000FF", "vert": "00FF00", "rouge":
Syntaxe "FF0000"}
Modules et >>> dico["bleu"]
fonctions
’0000FF’
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 75 / 169 v1.1.0
Remarques
Présentation
ordonnés).
de Python
Types et
Opérations
Types
Les types
numériques
Booléens
Type “rien”
Chaı̂nes de
caractères
Séquences
IDictionnaires
Ensembles
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 76 / 169 v1.1.0
Remarques
Présentation
ordonnés).
de Python
• On accède à un élément d’un dictionnaire pas sa clé.
Types et
Opérations
Types
Les types
numériques
Booléens
Type “rien”
Chaı̂nes de
caractères
Séquences
IDictionnaires
Ensembles
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 76 / 169 v1.1.0
Remarques
Présentation
ordonnés).
de Python
• On accède à un élément d’un dictionnaire pas sa clé.
Types et
Opérations • On peut ajouter / modifier / supprimer un élément du
Types
Les types
numériques
dictionnaire : les dictionnaires sont modifiables.
Booléens
Type “rien”
Chaı̂nes de
caractères
Séquences
IDictionnaires
Ensembles
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 76 / 169 v1.1.0
Remarques
Présentation
ordonnés).
de Python
• On accède à un élément d’un dictionnaire pas sa clé.
Types et
Opérations • On peut ajouter / modifier / supprimer un élément du
Types
Les types
numériques
dictionnaire : les dictionnaires sont modifiables.
Booléens
Type “rien” • On initialise un dictionnaire vide par des accolades ou avec
Chaı̂nes de
caractères d = dict().
Séquences
IDictionnaires
Ensembles
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 76 / 169 v1.1.0
Remarques
Présentation
ordonnés).
de Python
• On accède à un élément d’un dictionnaire pas sa clé.
Types et
Opérations • On peut ajouter / modifier / supprimer un élément du
Types
Les types
numériques
dictionnaire : les dictionnaires sont modifiables.
Booléens
Type “rien” • On initialise un dictionnaire vide par des accolades ou avec
Chaı̂nes de
caractères d = dict().
Séquences
IDictionnaires
Ensembles
Conclusion
References
Cours Intro Python 19/10/2018 76 / 169 v1.1.0
Opérations
Présentation
du module
Présentation
de Python Les opérations suivantes s’appliquent aux dictionnaires :
Types et
Opérations Opérateur Signification
Types
Les types
numériques
x in d x est dans une des clés de d
Booléens
Type “rien”
x not in d x n’est pas dans une des clés de d
Chaı̂nes de
caractères
d[c] retourne l’élément associé à la clé c
Séquences
IDictionnaires
len(d) nombre d’éléments de d
Ensembles
del(d[c]) supprime l’élément associé à la clé c
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 77 / 169 v1.1.0
Fonctions
Présentation
du module
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 78 / 169 v1.1.0
Déroulement de la présentation
Présentation
1 Présentation du module 5 Modules et fonctions
du module
Présentation
de Python 2 Présentation de Python 6 Fichiers et itérateurs
Types et
Opérations
Types 3 Types et Opérations 7 Conclusion
Les types
numériques
Booléens
Types
Type “rien”
Chaı̂nes de
Les types numériques
caractères
Séquences Booléens
Dictionnaires
IEnsembles Type “rien”
Syntaxe Chaı̂nes de caractères
Modules et
fonctions
Séquences
Fichiers et
Dictionnaires
itérateurs
Ensembles
Conclusion
References
Syntaxe
4 Python
Cours Intro 19/10/2018 79 / 169 v1.1.0
Ensembles
Présentation
du module
Présentation Définition
de Python
Les ensembles (set) sont des collections non ordonnées d’objets.
Types et
Opérations Ils sont similaires aux listes ou aux dictionnaires et possèdent
Types
Les types
numériques
certaines propriétés des types numériques.
Booléens
Type “rien”
Chaı̂nes de
caractères
Séquences
Dictionnaires
IEnsembles
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 80 / 169 v1.1.0
Ensembles
Présentation
du module
Présentation Définition
de Python
Les ensembles (set) sont des collections non ordonnées d’objets.
Types et
Opérations Ils sont similaires aux listes ou aux dictionnaires et possèdent
Types
Les types
numériques
certaines propriétés des types numériques.
Booléens
Type “rien”
Chaı̂nes de
caractères
Séquences >>> a = set("ensg geomatique")
Dictionnaires
IEnsembles
>>> a
Syntaxe
{’q’, ’g’, ’e’, ’a’, ’t’, ’u’, ’m’, ’n’, ’o’, ’i’, ’ ’, ’
s’}
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 80 / 169 v1.1.0
Remarques
Présentation
du module
Les ensembles :
Présentation
de Python
Types et
Opérations
Types
Les types
numériques
Booléens
Type “rien”
Chaı̂nes de
caractères
Séquences
Dictionnaires
IEnsembles
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 81 / 169 v1.1.0
Remarques
Présentation
du module
Les ensembles :
Présentation
de Python
• sont itérables (il est possible de retourner les éléments qui els
Types et
composent les uns à la suite des autres).
Opérations
Types
Les types
numériques
Booléens
Type “rien”
Chaı̂nes de
caractères
Séquences
Dictionnaires
IEnsembles
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 81 / 169 v1.1.0
Remarques
Présentation
du module
Les ensembles :
Présentation
de Python
• sont itérables (il est possible de retourner les éléments qui els
Types et
composent les uns à la suite des autres).
Opérations
Types • sont modifiables (ajout / modification / suppression
Les types
numériques d’éléments).
Booléens
Type “rien”
Chaı̂nes de
caractères
Séquences
Dictionnaires
IEnsembles
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 81 / 169 v1.1.0
Remarques
Présentation
du module
Les ensembles :
Présentation
de Python
• sont itérables (il est possible de retourner les éléments qui els
Types et
composent les uns à la suite des autres).
Opérations
Types • sont modifiables (ajout / modification / suppression
Les types
numériques d’éléments).
Booléens
Type “rien”
Chaı̂nes de
• peuvent contenir tout type d’objets.
caractères
Séquences
Dictionnaires
IEnsembles
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 81 / 169 v1.1.0
Remarques
Présentation
du module
Les ensembles :
Présentation
de Python
• sont itérables (il est possible de retourner les éléments qui els
Types et
composent les uns à la suite des autres).
Opérations
Types • sont modifiables (ajout / modification / suppression
Les types
numériques d’éléments).
Booléens
Type “rien”
Chaı̂nes de
• peuvent contenir tout type d’objets.
caractères
Séquences
Dictionnaires
• supportent les propriétés mathématiques des ensembles.
IEnsembles
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 81 / 169 v1.1.0
Remarques
Présentation
du module
Les ensembles :
Présentation
de Python
• sont itérables (il est possible de retourner les éléments qui els
Types et
composent les uns à la suite des autres).
Opérations
Types • sont modifiables (ajout / modification / suppression
Les types
numériques d’éléments).
Booléens
Type “rien”
Chaı̂nes de
• peuvent contenir tout type d’objets.
caractères
Séquences
Dictionnaires
• supportent les propriétés mathématiques des ensembles.
IEnsembles
• ne sont pas indexables (impossible de récupérer un élément à
Syntaxe
Modules et
partir de sa position).
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 81 / 169 v1.1.0
Remarques
Présentation
du module
Les ensembles :
Présentation
de Python
• sont itérables (il est possible de retourner les éléments qui els
Types et
composent les uns à la suite des autres).
Opérations
Types • sont modifiables (ajout / modification / suppression
Les types
numériques d’éléments).
Booléens
Type “rien”
Chaı̂nes de
• peuvent contenir tout type d’objets.
caractères
Séquences
Dictionnaires
• supportent les propriétés mathématiques des ensembles.
IEnsembles
• ne sont pas indexables (impossible de récupérer un élément à
Syntaxe
Modules et
partir de sa position).
fonctions
• ne contiennent pas d’objets en double.
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 81 / 169 v1.1.0
Opérations
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Cours Intro Python 19/10/2018 82 / 169 v1.1.0
Opérations
Conclusion
References
Cours Intro Python 19/10/2018 82 / 169 v1.1.0
Examples
Fichiers et
>>> a ^ b
itérateurs {’q’, ’l’, ’g’, ’a’, ’t’, ’b’, ’o’, ’j’}
Conclusion
References
Cours Intro Python 19/10/2018 83 / 169 v1.1.0
Fonctions
Présentation
Les ensembles supportent les fonctions suivantes :
du module
References
Cours Intro Python 19/10/2018 84 / 169 v1.1.0
Déroulement de la présentation
Présentation
du module
Présentation
de Python
1 Présentation du module 5 Modules et fonctions
Types et
Opérations
ISyntaxe
Structure du
2 Présentation de Python 6 Fichiers et itérateurs
code
Affectation
Tests
Boucles 3 Types et Opérations 7 Conclusion
Modules et
fonctions
Fichiers et 4 Syntaxe
itérateurs
Conclusion
References
ISyntaxe
Structure du
code
Affectation
Tests
Boucles
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Conclusion
References
Conclusion
L’instruction qui débute le bloc se ter-
References
mine par “:”.
Présentation
du module
1 Présentation du module 5 Modules et fonctions
Présentation
de Python
Types et
Opérations
2 Présentation de Python 6 Fichiers et itérateurs
Syntaxe
IStructure du
code 3 Types et Opérations 7 Conclusion
Affectation
Tests
Boucles
Modules et 4 Syntaxe
fonctions
Structure du code
Fichiers et
itérateurs Affectation
Conclusion Tests
References Boucles
Syntaxe
IStructure du
code
Affectation
Tests
Boucles
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Syntaxe if condition:
IStructure du
code instruction1
Affectation
Tests
instruction2
Boucles instruction3
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Syntaxe if condition:
IStructure du
code instruction1
Affectation
Tests
instruction2
Boucles instruction3
Modules et
fonctions
Fichiers et
itérateurs Remarque
Conclusion Les espaces et les sauts de ligne ne sont pas pris en compte par
References
l’interpréteur Python.
Présentation
du module
Présentation
de Python
Types et
Opérations
Syntaxe
IStructure du
code
Affectation
Tests
Boucles
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Présentation
du module
Présentation
de Python Python permet d’ajouter des commentaires dans le code, qui sont
Types et
Opérations
ignorés par l’interpréteur. Il en existe 2 types principaux :
Syntaxe
IStructure du
code
Affectation
Tests
Boucles
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Présentation
du module
Présentation
de Python Python permet d’ajouter des commentaires dans le code, qui sont
Types et
Opérations
ignorés par l’interpréteur. Il en existe 2 types principaux :
Syntaxe
IStructure du
• commentaire simple : commence par “]” et termine à la fin
code
Affectation
de la ligne
Tests
Boucles
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Présentation
du module
Présentation
de Python Python permet d’ajouter des commentaires dans le code, qui sont
Types et
Opérations
ignorés par l’interpréteur. Il en existe 2 types principaux :
Syntaxe
IStructure du
• commentaire simple : commence par “]” et termine à la fin
code
Affectation
de la ligne
Tests
Boucles • les docstrings : chaı̂ne de caractères commençant et finissant
Modules et
fonctions
par 3 guillemets
Fichiers et
itérateurs
Conclusion
References
def nb_points_sub_domain(points):
Présentation
du module """
Présentation Fonction qui calcule le nombre de points appartenant
de Python àun sous-domaine précis, pour une liste de points donnée
Types et
Opérations
:param points: liste de points
Syntaxe :return: nombre de points appartenant au sous-domaine
IStructure du
code """
Affectation
Tests nb_points = 0
Boucles
# On parcours la liste de points et on cherche
Modules et # leur appartenance au cercle trigonométrique
fonctions
for point in points:
Fichiers et
itérateurs if is_inside_circle(point[0],point[1]):
Conclusion
nb_points += 1
print (nb_points)
References
return nb_points
Présentation
du module
1 Présentation du module 5 Modules et fonctions
Présentation
de Python
Types et
Opérations
2 Présentation de Python 6 Fichiers et itérateurs
Syntaxe
Structure du
code 3 Types et Opérations 7 Conclusion
IAffectation
Tests
Boucles
Modules et 4 Syntaxe
fonctions
Structure du code
Fichiers et
itérateurs Affectation
Conclusion Tests
References Boucles
Présentation
du module • Pour affecter une valeur à une variable, on utilise le signe
Présentation “=”.
de Python
Types et
Opérations
Syntaxe
Structure du
code
IAffectation
Tests
Boucles >>> a = 1
Modules et >>> a
fonctions 1
Fichiers et
itérateurs
Conclusion
References
Présentation
du module • Pour affecter une valeur à une variable, on utilise le signe
Présentation “=”.
de Python
References
Présentation
une affectation augmentée.
de Python
Types et
Opérations
Syntaxe
Structure du
code
IAffectation
Tests
Boucles
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Présentation
une affectation augmentée.
de Python Ainsi, les instructions suivantes sont équivalentes :
Types et
Opérations
>>> a = 3 >>> a = 3
Syntaxe
Structure du >>> a = a + 3 >>> a += 3
code
IAffectation
>>> a >>> a
Tests 6 6
Boucles
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Présentation
une affectation augmentée.
de Python Ainsi, les instructions suivantes sont équivalentes :
Types et
Opérations
>>> a = 3 >>> a = 3
Syntaxe
Structure du >>> a = a + 3 >>> a += 3
code
IAffectation
>>> a >>> a
Tests 6 6
Boucles
Modules et
fonctions
Fichiers et Remarque
itérateurs
Présentation
du module
1 Présentation du module 5 Modules et fonctions
Présentation
de Python
Types et
Opérations
2 Présentation de Python 6 Fichiers et itérateurs
Syntaxe
Structure du
code 3 Types et Opérations 7 Conclusion
Affectation
ITests
Boucles
Modules et 4 Syntaxe
fonctions
Structure du code
Fichiers et
itérateurs Affectation
Conclusion Tests
References Boucles
“if”
Présentation
du module
Les tests permettent de réaliser différentes instructions selon une
Présentation condition. On teste cette condition avec le mot clé “if”.
de Python
Types et
Opérations
Syntaxe
Structure du
code
Affectation
ITests
Boucles
Modules et >>> x = 1
fonctions
>>> if (x > 0):
Fichiers et print(x)
itérateurs
Conclusion
1
References
“if”
Présentation
du module
Les tests permettent de réaliser différentes instructions selon une
Présentation condition. On teste cette condition avec le mot clé “if”.
de Python
Types et “else”
Opérations
Syntaxe
S’il faut réaliser d’autres instructions dans le cas ou la condition
Structure du
code
n’est pas vérifiée, on utilise le mot clé “else”.
Affectation
ITests
Boucles
“elif”
Présentation
du module
S’il faut réaliser plusieurs tests, ou si on veut différencier plus que
Présentation 2 possibilités pour la condition, on peut utiliser le mot clé “elif”.
de Python
Types et
Opérations
Syntaxe
Structure du
code
Affectation
ITests
Boucles
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
“elif”
Présentation
du module
S’il faut réaliser plusieurs tests, ou si on veut différencier plus que
Présentation 2 possibilités pour la condition, on peut utiliser le mot clé “elif”.
de Python
Conclusion
Indentation
References En Python, la structure étant caractérisée par l’indentation, il
faut penser à indenter les instructions qui suivent chaque “if”,
“elif” ou “else”.
Cours Intro Python 19/10/2018 97 / 169 v1.1.0
Simplification des conditions
Présentation
du module
Présentation
Il est possible de simplifier l’écriture de certaines conditions
de Python lorsque la valeur est comparée à None, un booléen ou 0.
Types et
Opérations
Syntaxe
Structure du
code
Affectation
ITests
Boucles
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Présentation
du module
Présentation
Il est possible de simplifier l’écriture de certaines conditions
de Python lorsque la valeur est comparée à None, un booléen ou 0.
Types et
Opérations Valeur Test Test simplifié
Syntaxe
Structure du
code
Affectation
ITests
Boucles
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Présentation
du module
Présentation
Il est possible de simplifier l’écriture de certaines conditions
de Python lorsque la valeur est comparée à None, un booléen ou 0.
Types et
Opérations Valeur Test Test simplifié
Syntaxe
Structure du
None if x == None if not x
code
Affectation None if x != None if x
ITests
Boucles
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Présentation
du module
Présentation
Il est possible de simplifier l’écriture de certaines conditions
de Python lorsque la valeur est comparée à None, un booléen ou 0.
Types et
Opérations Valeur Test Test simplifié
Syntaxe
Structure du
None if x == None if not x
code
Affectation None if x != None if x
ITests
Boucles Booléen if x == True if x
Modules et Booléen if x == False if not x
fonctions
Fichiers et
itérateurs
Conclusion
References
Présentation
du module
Présentation
Il est possible de simplifier l’écriture de certaines conditions
de Python lorsque la valeur est comparée à None, un booléen ou 0.
Types et
Opérations Valeur Test Test simplifié
Syntaxe
Structure du
None if x == None if not x
code
Affectation None if x != None if x
ITests
Boucles Booléen if x == True if x
Modules et Booléen if x == False if not x
fonctions
Fichiers et
Zéro if x == 0 if not x
itérateurs Zéro if x != 0 if x
Conclusion
References
Présentation
du module “pass”
Présentation
de Python
Lors qu’aucune instruction ne doit être réalisée, selon une certaine
Types et
condition, on utilise le mot clé “pass”.
Opérations
Syntaxe
Structure du
code
Affectation
ITests
Boucles
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Présentation
du module “pass”
Présentation
de Python
Lors qu’aucune instruction ne doit être réalisée, selon une certaine
Types et
condition, on utilise le mot clé “pass”.
Opérations
Syntaxe
Structure du
code >>> if (not x):
Affectation
ITests
pass
Boucles elif (x > 0):
Modules et print ("x positif")
fonctions
else:
Fichiers et
itérateurs
print ("x négatif")
Conclusion
x positif
References
Présentation
du module
1 Présentation du module 5 Modules et fonctions
Présentation
de Python
Types et
Opérations
2 Présentation de Python 6 Fichiers et itérateurs
Syntaxe
Structure du
code 3 Types et Opérations 7 Conclusion
Affectation
Tests
IBoucles
Modules et 4 Syntaxe
fonctions
Structure du code
Fichiers et
itérateurs Affectation
Conclusion Tests
References Boucles
Présentation
du module
Présentation
de Python
Définition
Types et
Opérations Les boucles permettent d’exécuter plusieurs fois un bloc
Syntaxe d’instructions. En Python les mots clés “while” et “for” sont
Structure du
code utilisés pour faire des boucles.
Affectation
Tests
IBoucles
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Présentation
du module
Présentation
de Python
Définition
Types et
Opérations Les boucles permettent d’exécuter plusieurs fois un bloc
Syntaxe d’instructions. En Python les mots clés “while” et “for” sont
Structure du
code utilisés pour faire des boucles.
Affectation
Tests
IBoucles
Modules et
fonctions
Les instructions à l’intérieur d’une boucle sont indentées. C’est le
Fichiers et
retour à l’indentation initiale qui marque la fin de la boucle.
itérateurs
Conclusion
References
Définition
Présentation
du module
Le boucle while permet de réaliser un bloc d’instructions tant que
Présentation la condition est réalisée. Il est possible de rajouter un “else” qui
de Python
contiendra des instructions réalisées une fois que les itérations de
Types et
Opérations la boucle sont terminées.
Syntaxe
Structure du
code
Affectation
Tests
IBoucles
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Définition
Présentation
du module
Le boucle while permet de réaliser un bloc d’instructions tant que
Présentation la condition est réalisée. Il est possible de rajouter un “else” qui
de Python
contiendra des instructions réalisées une fois que les itérations de
Types et
Opérations la boucle sont terminées.
Syntaxe
Structure du >>> x = 0
code
Affectation >>> while (x < 3):
Tests print(x)
IBoucles
x += 1
Modules et
fonctions else:
Fichiers et print("boucle terminée")
itérateurs
Conclusion 0
References 1
2
boucle terminée
Cours Intro Python 19/10/2018 102 / 169 v1.1.0
Boucle while
Définition
Présentation
du module
Le boucle while permet de réaliser un bloc d’instructions tant que
Présentation la condition est réalisée. Il est possible de rajouter un “else” qui
de Python
contiendra des instructions réalisées une fois que les itérations de
Types et
Opérations la boucle sont terminées.
Syntaxe
Structure du >>> x = 0
code
Affectation >>> while (x < 3):
Tests print(x)
IBoucles
x += 1
Modules et
fonctions else: Attention
Fichiers et print("boucle terminée") Attention aux boucles
itérateurs
Définition
Présentation
du module
Le boucle for permet d’itérer une séquence (liste, tuple, range,
Présentation dictionnaire, . . .) et d’exécuter un bloc d’instructions pour tous
de Python
les éléments de cette séquence. Comme pour la boucle for, il est
Types et
Opérations possible d’ajouter un “else” à la fin.
Syntaxe
Structure du
code
Affectation
Tests
IBoucles
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Définition
Présentation
du module
Le boucle for permet d’itérer une séquence (liste, tuple, range,
Présentation dictionnaire, . . .) et d’exécuter un bloc d’instructions pour tous
de Python
les éléments de cette séquence. Comme pour la boucle for, il est
Types et
Opérations possible d’ajouter un “else” à la fin.
Syntaxe
Structure du
code
>>> x = 0
Affectation >>> for i in range(3):
Tests
IBoucles print (x)
Modules et x += 1
fonctions else:
Fichiers et print ("fin de l’exécution")
itérateurs
Conclusion
0
References 1
2
fin de l’exécution
Cours Intro Python 19/10/2018 103 / 169 v1.1.0
Boucle for
Présentation
du module Il est possible d’itérer sur les éléments d’une chaı̂ne de caractères,
Présentation des tuples, les clés d’un dictionnaire, . . ..
de Python
Types et
Opérations
Syntaxe
Structure du
code
Affectation
Tests
IBoucles
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Présentation
du module Il est possible d’itérer sur les éléments d’une chaı̂ne de caractères,
Présentation des tuples, les clés d’un dictionnaire, . . ..
de Python
Types et
Opérations >>> s = "ensg"
Syntaxe >>> for lettre in s:
Structure du
code
print(lettre)
Affectation
Tests
IBoucles e
Modules et n
fonctions s
Fichiers et g
itérateurs
Conclusion
References
Présentation
du module Il est possible d’itérer sur les éléments d’une chaı̂ne de caractères,
Présentation des tuples, les clés d’un dictionnaire, . . ..
de Python
Types et
Opérations >>> s = "ensg" >>> l = [(1,2), (3,4), (5,6)]
Syntaxe >>> for lettre in s: >>> for (i,j) in l:
Structure du
code
print(lettre) print(i,j)
Affectation
Tests
IBoucles e 1 2
Modules et n 3 4
fonctions s 5 6
Fichiers et g
itérateurs
Conclusion
References
Présentation
du module Il est possible d’itérer sur les éléments d’une chaı̂ne de caractères,
Présentation des tuples, les clés d’un dictionnaire, . . ..
de Python
References
Types et
Opérations
Syntaxe
Structure du
code
Affectation
Tests
IBoucles
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Types et
Opérations
• “break” permet de sortir définitivement d’une boucle
Syntaxe
Structure du
code
Affectation
Tests
IBoucles
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Types et
Opérations
• “break” permet de sortir définitivement d’une boucle
Syntaxe • “continue” permet de retourner au début des instructions de
Structure du
code la boucle
Affectation
Tests
IBoucles
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Types et
Opérations
• “break” permet de sortir définitivement d’une boucle
Syntaxe • “continue” permet de retourner au début des instructions de
Structure du
code la boucle
Affectation
Tests
IBoucles
Clause “else”
Modules et
fonctions Si l’on veut exécuter un groupe d’instructions après qu’une boucle
Fichiers et
itérateurs
se soit terminée correctement, on peut utiliser un “else”.
Conclusion
References
Types et
Opérations
• “break” permet de sortir définitivement d’une boucle
Syntaxe • “continue” permet de retourner au début des instructions de
Structure du
code la boucle
Affectation
Tests
IBoucles
Clause “else”
Modules et
fonctions Si l’on veut exécuter un groupe d’instructions après qu’une boucle
Fichiers et
itérateurs
se soit terminée correctement, on peut utiliser un “else”.
Conclusion
References “pass”
Il est aussi possible d’utiliser le mot cle “pass” dans les boucles.
Présentation
du module
References
Présentation
du module
Présentation
de Python Placement de “continue”
Types et
Opérations
Attention au placement de “continue”, cela peut entraı̂ner des
Syntaxe boucles infinies !
Structure du
code
Affectation
Tests
>>> x = 0
IBoucles >>> while (x < 5):
Modules et continue
fonctions
x += 1
Fichiers et
itérateurs
Conclusion
References
Fichiers et
itérateurs
Conclusion
References
Fichiers et
itérateurs
Clause “else”
Conclusion Dans le cas de l’utilisation d’un “break”, les instructions de la
References clause “else” ne sont pas lues.
Présentation
du module
Syntaxe
Structure du
code
Affectation
Tests
IBoucles
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Présentation
du module
Conclusion
References
Présentation
du module
Définition
Présentation Les listes de compréhension sont une spécificité du Python. C’est
de Python
la manière la plus rapide de créer une liste. Pour cela, il existe
Types et
Opérations une syntaxe spécifique en Python, à partir d’une boucle for.
Syntaxe
Structure du
code
Affectation
Tests
IBoucles
Modules et
fonctions
Fichiers et
itérateurs
Conclusion
References
Présentation
du module
Définition
Présentation Les listes de compréhension sont une spécificité du Python. C’est
de Python
la manière la plus rapide de créer une liste. Pour cela, il existe
Types et
Opérations une syntaxe spécifique en Python, à partir d’une boucle for.
Syntaxe
Structure du
code >>> liste = [1,2,3,4]
Affectation
Tests >>> liste2 = [x ** 2 for x in liste]
IBoucles
>>> liste2
Modules et
fonctions
[1,4,9,16]
Fichiers et
itérateurs
Conclusion
References
Présentation
du module
Définition
Présentation Les listes de compréhension sont une spécificité du Python. C’est
de Python
la manière la plus rapide de créer une liste. Pour cela, il existe
Types et
Opérations une syntaxe spécifique en Python, à partir d’une boucle for.
Syntaxe
Structure du
code >>> liste = [1,2,3,4]
Affectation
Tests >>> liste2 = [x ** 2 for x in liste]
IBoucles
>>> liste2
Modules et
fonctions
[1,4,9,16]
Fichiers et
itérateurs
Remarque
Conclusion
References
Cette syntaxe s’applique à tous les objets itérables.
Présentation
du module
Présentation
de Python
1 Présentation du module 5 Modules et fonctions
Types et
Opérations
Fichiers et 4 Syntaxe
itérateurs
Conclusion
References
Présentation
du module
Présentation
de Python 1 Présentation du module 5 Modules et fonctions
Types et
Opérations
Fonctions
Syntaxe 2 Présentation de Python Imports et modules
Modules et Installer des packages
fonctions
IFonctions
Imports et
3 Types et Opérations
modules
Installer des
6 Fichiers et itérateurs
packages
Fichiers et 4 Syntaxe
itérateurs 7 Conclusion
Conclusion
References
Présentation
du module
Définition
Présentation Les fonctions sont des ensembles d’instructions appelables
de Python
plusieurs fois dans un programme. Elles peuvent prendre certaines
Types et
Opérations valeurs en entrée et retourner d’autres valeurs.
Syntaxe
Modules et
fonctions
IFonctions
Imports et
modules
Installer des
packages
Fichiers et
itérateurs
Conclusion
References
Présentation
du module
Définition
Présentation Les fonctions sont des ensembles d’instructions appelables
de Python
plusieurs fois dans un programme. Elles peuvent prendre certaines
Types et
Opérations valeurs en entrée et retourner d’autres valeurs.
Syntaxe
Modules et Remarques
fonctions
IFonctions
Imports et
modules
Installer des
packages
Fichiers et
itérateurs
Conclusion
References
Présentation
du module
Définition
Présentation Les fonctions sont des ensembles d’instructions appelables
de Python
plusieurs fois dans un programme. Elles peuvent prendre certaines
Types et
Opérations valeurs en entrée et retourner d’autres valeurs.
Syntaxe
Modules et Remarques
fonctions
IFonctions
Imports et
Une fonction n’a pas forcément de paramètres ni de retours.
modules
Installer des
packages
Fichiers et
itérateurs
Conclusion
References
Présentation
du module
Définition
Présentation Les fonctions sont des ensembles d’instructions appelables
de Python
plusieurs fois dans un programme. Elles peuvent prendre certaines
Types et
Opérations valeurs en entrée et retourner d’autres valeurs.
Syntaxe
Modules et Remarques
fonctions
IFonctions
Imports et
Une fonction n’a pas forcément de paramètres ni de retours.
modules
Installer des
packages
Les paramètres en entrée peuvent varier d’une exécution à
Fichiers et une autre.
itérateurs
Conclusion
References
Présentation
du module
Définition
Présentation Les fonctions sont des ensembles d’instructions appelables
de Python
plusieurs fois dans un programme. Elles peuvent prendre certaines
Types et
Opérations valeurs en entrée et retourner d’autres valeurs.
Syntaxe
Modules et Remarques
fonctions
IFonctions
Imports et
Une fonction n’a pas forcément de paramètres ni de retours.
modules
Installer des
packages
Les paramètres en entrée peuvent varier d’une exécution à
Fichiers et une autre.
itérateurs
Conclusion
L’ensemble des instructions à l’intérieur de la fonction
References
s’appelle le corps.
Présentation
du module
Présentation
de Python • Une fonction commence par le mot clé “def”.
Types et
Opérations
Syntaxe
Modules et
fonctions
IFonctions
Imports et
modules
Installer des
packages
Fichiers et
itérateurs
Conclusion
References
Présentation
du module
Présentation
de Python • Une fonction commence par le mot clé “def”.
Types et
Opérations • Le nom de la fonction est suivi de parenthèses.
Syntaxe
Modules et
fonctions
IFonctions
Imports et
modules
Installer des
packages
Fichiers et
itérateurs
Conclusion
References
Présentation
du module
Présentation
de Python • Une fonction commence par le mot clé “def”.
Types et
Opérations • Le nom de la fonction est suivi de parenthèses.
Syntaxe • Le corps de la fonction est indenté.
Modules et
fonctions
IFonctions
Imports et
modules
Installer des
packages
Fichiers et
itérateurs
Conclusion
References
Présentation
du module
Présentation
de Python • Une fonction commence par le mot clé “def”.
Types et
Opérations • Le nom de la fonction est suivi de parenthèses.
Syntaxe • Le corps de la fonction est indenté.
Modules et
fonctions • La fonction se termine lorsque l’indentation retourne à son
IFonctions
Imports et
niveau initial.
modules
Installer des
packages
Fichiers et
itérateurs
Conclusion
References
Présentation
du module
Présentation
de Python • Une fonction commence par le mot clé “def”.
Types et
Opérations • Le nom de la fonction est suivi de parenthèses.
Syntaxe • Le corps de la fonction est indenté.
Modules et
fonctions • La fonction se termine lorsque l’indentation retourne à son
IFonctions
Imports et
niveau initial.
modules
Installer des
packages
• Si la fonction possède un résultat, il est spécifié grâce au
Fichiers et mot clé “return”.
itérateurs
Conclusion
References
Présentation
du module
def Nom Fonction (paramètre 1, paramètre 2) :
Présentation
instruction 1
de Python
instruction 2
Types et
Opérations instruction 3
Syntaxe return valeur retournée
Modules et
fonctions
IFonctions
Imports et
modules
Installer des
packages
Fichiers et
itérateurs
Conclusion
References
Présentation
du module
def Nom Fonction (paramètre 1, paramètre 2) :
Présentation
instruction 1
de Python
instruction 2
Types et
Opérations instruction 3
Syntaxe return valeur retournée
Modules et
fonctions
IFonctions
Imports et
def fibonacci(seuil):
modules """fib"""
Installer des
packages n = [1,1]
Fichiers et while (len(n) < seuil):
itérateurs
n.append(n[len(n)-1 + n[len(n)-2])
Conclusion
return n
References
Présentation
du module
Présentation
de Python On appelle une fonction en écrivant son nom suivi des
Types et
Opérations
parenthèses dans le programme.
Syntaxe >>> def my_function():
Modules et print("hello world")
fonctions
IFonctions
Imports et >>> my_function()
modules
Installer des hello world
packages
Fichiers et
itérateurs
Conclusion
References
Fichiers et
itérateurs
Conclusion
References
Fichiers et
>>> def fonction():
itérateurs return 0, "abcde", 3.1415
Conclusion
Présentation
du module On peut aussi récupérer les valeurs retournées de la façon
Présentation suivante :
de Python
Présentation
du module
Présentation
Les paramètres en entrée de la fonction s’ajoutent entre les
de Python parenthèses. Lors de l’appel de la fonction on précise les valeurs
Types et
Opérations
de ces paramètres.
Syntaxe
Modules et
fonctions
IFonctions
Imports et
modules
Installer des
packages
Fichiers et
itérateurs
Conclusion
References
Présentation
du module
Présentation
Les paramètres en entrée de la fonction s’ajoutent entre les
de Python parenthèses. Lors de l’appel de la fonction on précise les valeurs
Types et
Opérations
de ces paramètres.
Syntaxe >>> def plus(x,y):
Modules et p = x+y
fonctions return p
IFonctions
Imports et
modules
Installer des >>> p = plus(1,2)
packages
>>> p
Fichiers et
itérateurs 3
Conclusion
References
Définition
Présentation
du module
La portée d’une variable est la portion du programme à l’intérieur
Présentation de laquelle elle référence une adresse mémoire (on dit qu’elle
de Python
“existe”).
Types et
Opérations
Syntaxe
Modules et
fonctions
IFonctions
Imports et
modules
Installer des
packages
Fichiers et
itérateurs
Conclusion
References
Définition
Présentation
du module
La portée d’une variable est la portion du programme à l’intérieur
Présentation de laquelle elle référence une adresse mémoire (on dit qu’elle
de Python
“existe”).
Types et
Opérations
Syntaxe Remarques
Modules et Les variables définies à l’intérieur d’une fonction n’existent
fonctions
IFonctions qu’à l’intérieur de cette fonction.
Imports et
modules
Installer des Les variables définies à l’extérieur d’une fonction ne sont pas
packages
Fichiers et
modifiables par celle-ci.
itérateurs
Conclusion
References
Définition
Présentation
du module
La portée d’une variable est la portion du programme à l’intérieur
Présentation de laquelle elle référence une adresse mémoire (on dit qu’elle
de Python
“existe”).
Types et
Opérations
Syntaxe Remarques
Modules et Les variables définies à l’intérieur d’une fonction n’existent
fonctions
IFonctions qu’à l’intérieur de cette fonction.
Imports et
modules
Installer des Les variables définies à l’extérieur d’une fonction ne sont pas
packages
Fichiers et
modifiables par celle-ci.
itérateurs
Présentation
du module
Présentation
de Python Variable locale
Types et
Opérations
Une variable est dite locale lorsque sa portée se limite à la
Syntaxe fonction dans laquelle elle est définie.
Modules et
fonctions
IFonctions
Imports et
modules
Installer des
packages
Fichiers et
itérateurs
Conclusion
References
Présentation
du module
Présentation
de Python Variable locale
Types et
Opérations
Une variable est dite locale lorsque sa portée se limite à la
Syntaxe fonction dans laquelle elle est définie.
Modules et
fonctions
IFonctions Variable globale
Imports et
modules
Installer des
Une variable est dit globale lorsqu’elle est visible dans tout le
packages
programme.
Fichiers et
itérateurs
Conclusion
References
Modules et >>> y
fonctions
IFonctions
Traceback (most recent call last):
Imports et
modules
File "<stdin>", line 1, in <module>
Installer des
packages
NameError: name ’y’ is not defined
Fichiers et
itérateurs >>> def test2():
Conclusion x = 2
References
>>> test2()
>>> x
1
Cours Intro Python 19/10/2018 123 / 169 v1.1.0
Mot clé “global”
Fichiers et
itérateurs
Conclusion
References
Fichiers et
itérateurs Attention
Conclusion
On essaiera de s’affranchir de l’utilisation de ce mot clé, car cela
References
revient à faire passer un paramètre caché à la fonction.
Syntaxe
Modules et
fonctions
IFonctions
Imports et
modules
Installer des
packages
Fichiers et
itérateurs
Conclusion
References
Présentation
du module
Types et
Opérations
Syntaxe
Modules et
fonctions
IFonctions
Imports et
modules
Installer des
packages
Fichiers et
itérateurs
Conclusion
References
Présentation
du module
Syntaxe
Modules et
fonctions
IFonctions
Imports et
modules
Installer des
packages
Fichiers et
itérateurs
Conclusion
References
Présentation
du module
Syntaxe
2 si elle est déclarée dans le contexte d’inclusion (i.e. fonction
Modules et englobante),
fonctions
IFonctions
Imports et
modules
Installer des
packages
Fichiers et
itérateurs
Conclusion
References
Présentation
du module
Syntaxe
2 si elle est déclarée dans le contexte d’inclusion (i.e. fonction
Modules et englobante),
fonctions
IFonctions 3 s’il s’agit d’une variable globale,
Imports et
modules
Installer des
packages
Fichiers et
itérateurs
Conclusion
References
Présentation
du module
Syntaxe
2 si elle est déclarée dans le contexte d’inclusion (i.e. fonction
Modules et englobante),
fonctions
IFonctions 3 s’il s’agit d’une variable globale,
Imports et
modules
Installer des 4 si elle fait partie des objets intégrés au langage.
packages
Fichiers et
itérateurs
Conclusion
References
Présentation
du module
Syntaxe
2 si elle est déclarée dans le contexte d’inclusion (i.e. fonction
Modules et englobante),
fonctions
IFonctions 3 s’il s’agit d’une variable globale,
Imports et
modules
Installer des 4 si elle fait partie des objets intégrés au langage.
packages
Fichiers et
itérateurs
On parle de règle LEGB pour Local Enclosing Global Built-in.
Conclusion
References
Syntaxe
Modules et
fonctions
IFonctions
Imports et
modules
Installer des
packages
Fichiers et
itérateurs
Conclusion
References
Conclusion
References
Conclusion
Position des paramètres
References Attention à la position des paramètres, les paramètres avec des
valeurs par défaut doivent toujours être placés après les autres
paramètres.
Cours Intro Python 19/10/2018 127 / 169 v1.1.0
Fonctions et types modifiables
>>> def init_liste(n, liste):
for i in range(n):
Présentation liste[i] = 0
du module
n += 1
Présentation
de Python
Types et
>>> n = 2
Opérations >>> liste = [1,2,3,4,5]
Syntaxe >>> init_liste(n,liste)
Modules et
>>> n
fonctions 2
IFonctions
Imports et
>>> liste
modules
Installer des
[0,0,3,4,5]
packages
Fichiers et
itérateurs
Conclusion
References
Types et
>>> n = 2
Opérations >>> liste = [1,2,3,4,5]
Syntaxe >>> init_liste(n,liste)
Modules et
>>> n
fonctions 2
IFonctions
Imports et
>>> liste
modules
Installer des
[0,0,3,4,5]
packages
Fichiers et Dans cette fonction, le paramètre n n’a pas été modifié. Ceci est
itérateurs
dû au fait que n est d’un type immuable. On dit qu’il a été passé
Conclusion
en valeur.
References
Types et
>>> n = 2
Opérations >>> liste = [1,2,3,4,5]
Syntaxe >>> init_liste(n,liste)
Modules et
>>> n
fonctions 2
IFonctions
Imports et
>>> liste
modules
Installer des
[0,0,3,4,5]
packages
Fichiers et Dans cette fonction, le paramètre n n’a pas été modifié. Ceci est
itérateurs
dû au fait que n est d’un type immuable. On dit qu’il a été passé
Conclusion
en valeur.
References
En revanche, la liste a été modifiée. ceci est dû au fait qu’elle est
d’un type modifiable. On parle de passage en paramètre.
Cours Intro Python 19/10/2018 128 / 169 v1.1.0
Passage des paramètres
Présentation
du module
Présentation Rappel
de Python
Types et
Passer un paramètre à une fonction revient à affecter une
Opérations valeur à une variable locale
Syntaxe
Modules et
fonctions
IFonctions
Imports et
modules
Installer des
packages
Fichiers et
itérateurs
Conclusion
References
Présentation
du module
Présentation Rappel
de Python
Types et
Passer un paramètre à une fonction revient à affecter une
Opérations valeur à une variable locale
Syntaxe
L’attribution des noms des paramètres n’a pas de
Modules et
fonctions conséquence en dehors de la fonction
IFonctions
Imports et
modules
Installer des
packages
Fichiers et
itérateurs
Conclusion
References
Présentation
du module
Présentation Rappel
de Python
Types et
Passer un paramètre à une fonction revient à affecter une
Opérations valeur à une variable locale
Syntaxe
L’attribution des noms des paramètres n’a pas de
Modules et
fonctions conséquence en dehors de la fonction
IFonctions
Imports et
modules Modifier les valeurs d’un type modifiable dans une fonction a
Installer des
packages un impact sur l’objet en dehors de la fonction.
Fichiers et
itérateurs
Conclusion
References
Présentation
du module
Présentation Rappel
de Python
Types et
Passer un paramètre à une fonction revient à affecter une
Opérations valeur à une variable locale
Syntaxe
L’attribution des noms des paramètres n’a pas de
Modules et
fonctions conséquence en dehors de la fonction
IFonctions
Imports et
modules Modifier les valeurs d’un type modifiable dans une fonction a
Installer des
packages un impact sur l’objet en dehors de la fonction.
Fichiers et
itérateurs L’ordre des paramètres a une importance.
Conclusion
References
Présentation
du module Définition
Présentation
de Python
Python autorise le fait de passer un nombre indéterminé de
Types et paramètres à une fonction. Pour cela on utilise la syntaxe “*n”.
Opérations
Les arguments sont passés à la fonction sous forme de tuple.
Syntaxe
Modules et
fonctions
IFonctions
Imports et
modules
Installer des
packages
Fichiers et
itérateurs
Conclusion
References
Présentation
du module Définition
Présentation
de Python
Python autorise le fait de passer un nombre indéterminé de
Types et paramètres à une fonction. Pour cela on utilise la syntaxe “*n”.
Opérations
Les arguments sont passés à la fonction sous forme de tuple.
Syntaxe
Modules et
fonctions >>> def pos_var_arg(*n):
IFonctions
Imports et
print(n)
modules print(type(n))
Installer des
packages
Présentation
du module
Présentation
de Python
Types et Définition
Opérations
Fichiers et
itérateurs
Conclusion
References
Présentation
du module
Présentation
de Python Si l’on souhaite combiner plusieurs types de paramètres, il faut
Types et respecter l’ordre suivant :
Opérations
Syntaxe
Modules et
fonctions
IFonctions
Imports et
modules
Installer des
packages
Fichiers et
itérateurs
Conclusion
References
Présentation
du module
Présentation
de Python Si l’on souhaite combiner plusieurs types de paramètres, il faut
Types et respecter l’ordre suivant :
Opérations
Fichiers et
itérateurs
Conclusion
References
Présentation
du module
Présentation
de Python Si l’on souhaite combiner plusieurs types de paramètres, il faut
Types et respecter l’ordre suivant :
Opérations
Fichiers et
itérateurs
Conclusion
References
Présentation
du module
Présentation
de Python Si l’on souhaite combiner plusieurs types de paramètres, il faut
Types et respecter l’ordre suivant :
Opérations
Fichiers et
itérateurs
Conclusion
References
Présentation
du module
Présentation
de Python Si l’on souhaite combiner plusieurs types de paramètres, il faut
Types et respecter l’ordre suivant :
Opérations
Conclusion
References
Définition
Présentation
du module
Une fonction récursive est une fonction qui s’appelle elle-même.
Présentation L’exemple le plus classique est la fonction factorielle.
de Python
Types et
Opérations
Syntaxe
Modules et
fonctions
IFonctions
Imports et
modules
Installer des
packages
Fichiers et
itérateurs
Conclusion
References
Définition
Présentation
du module
Une fonction récursive est une fonction qui s’appelle elle-même.
Présentation L’exemple le plus classique est la fonction factorielle.
de Python
Conclusion
References
Définition
Présentation
du module
Une fonction récursive est une fonction qui s’appelle elle-même.
Présentation L’exemple le plus classique est la fonction factorielle.
de Python
Conclusion
Attention
References Python n’autorise pas plus de 1000 appels récursifs
⇒ pour calculer factorielle(1000) il faut écrire une fonction non
récursive.
Cours Intro Python 19/10/2018 134 / 169 v1.1.0
Notions supplémentaires
Présentation
du module
Présentation
de Python
Types et
Opérations
Fichiers et
itérateurs
Conclusion
References
Présentation
du module
Présentation
de Python 1 Présentation du module 5 Modules et fonctions
Types et
Opérations
Fonctions
Syntaxe 2 Présentation de Python Imports et modules
Modules et Installer des packages
fonctions
Fonctions
IImports et
3 Types et Opérations
modules
Installer des
6 Fichiers et itérateurs
packages
Fichiers et 4 Syntaxe
itérateurs 7 Conclusion
Conclusion
References
Présentation
du module Maintenant que nous savons écrire et appeler des fonctions au
Présentation
de Python
sein d’un même fichier .py, nous allons voir comment organiser
Types et notre programme en plusieurs fichiers et comment appeler les
Opérations
fonctions contenus dans chacune des fichiers.
Syntaxe
Modules et
fonctions
Fonctions
IImports et
modules
Installer des
packages
Fichiers et
itérateurs
Conclusion
References
Présentation
du module Maintenant que nous savons écrire et appeler des fonctions au
Présentation
de Python
sein d’un même fichier .py, nous allons voir comment organiser
Types et notre programme en plusieurs fichiers et comment appeler les
Opérations
fonctions contenus dans chacune des fichiers.
Syntaxe
Modules et
fonctions Définition
Fonctions
IImports et
modules
Chaque fichier .py est un module Python. Ils servent à stocker
Installer des
packages
séparément des aspects différents d’un programme et peuvent
Fichiers et être appelés dans d’autres modules afin d’accéder aux fonctions
itérateurs
qui y sont écrites.
Conclusion
References
Types et
Opérations
Syntaxe
Modules et
fonctions
Fonctions
IImports et
modules
Installer des
packages
Fichiers et
itérateurs
Conclusion
References
Fichiers et
itérateurs
Conclusion
References
Conclusion
cœur du langage pour les structures de données de base
References contexte global pour les variables d’un programme
contexte local pour les variables d’une fonction
Présentation
du module
Ce système permet aussi d’utiliser plusieurs variables ou fonctions
Présentation
qui portent le même nom mais qui sont “stockées” dans des
de Python espaces de noms différents.
Types et
Opérations
Syntaxe
Modules et
fonctions
Fonctions
IImports et
modules
Installer des
packages
Fichiers et
itérateurs
Conclusion
References
Présentation
du module
Ce système permet aussi d’utiliser plusieurs variables ou fonctions
Présentation
qui portent le même nom mais qui sont “stockées” dans des
de Python espaces de noms différents.
Types et
Opérations
Concrètement, l’identification complète d’une variable ou d’une
Syntaxe
fonction se fait de la façon suivante :
Modules et
fonctions
Fonctions espace de nom.sous espace de nom. nom
IImports et
modules
Installer des
packages
Fichiers et
itérateurs
Conclusion
References
Présentation
du module
Ce système permet aussi d’utiliser plusieurs variables ou fonctions
Présentation
qui portent le même nom mais qui sont “stockées” dans des
de Python espaces de noms différents.
Types et
Opérations
Concrètement, l’identification complète d’une variable ou d’une
Syntaxe
fonction se fait de la façon suivante :
Modules et
fonctions
Fonctions espace de nom.sous espace de nom. nom
IImports et
modules
Installer des
packages
Fichiers et
Remarque
itérateurs
La notion d’espaces de noms est liée à celle de la portée des
Conclusion
variables.
References
Types et
Opérations
Syntaxe
Modules et
fonctions
Fonctions
IImports et
modules
Installer des
packages
Fichiers et
itérateurs
Conclusion
References
Fichiers et
itérateurs
Conclusion
References
Présentation
du module “Import”
Présentation
de Python Pour charger un module externe, il faut utiliser le mot clé
Types et “import” suivi du nom du module.
Opérations
Une fois la commande exécutée, l’interpréteur charge dans le
Syntaxe
Modules et
programme l’espace de noms du module.
fonctions
Fonctions
IImports et
modules
Installer des
packages
Fichiers et
itérateurs
Conclusion
References
Présentation
du module “Import”
Présentation
de Python Pour charger un module externe, il faut utiliser le mot clé
Types et “import” suivi du nom du module.
Opérations
Une fois la commande exécutée, l’interpréteur charge dans le
Syntaxe
Modules et
programme l’espace de noms du module.
fonctions
Fonctions
IImports et
Pour utiliser une fonction d’un module il suffit ensuite de
modules
Installer des l’appeler : nom module.nom fonction.
packages
Présentation
du module Dans la cas où l’on ne souhaite utiliser qu’une fonction du
Présentation
de Python
module on utilise le mot clé from :
Types et >>> from math import sqrt
Opérations
>>> sqrt(4)
Syntaxe 2.0
Modules et
fonctions
Fonctions
IImports et
modules
Installer des
packages
Fichiers et
itérateurs
Conclusion
References
Présentation
du module Dans la cas où l’on ne souhaite utiliser qu’une fonction du
Présentation
de Python
module on utilise le mot clé from :
Types et >>> from math import sqrt
Opérations
>>> sqrt(4)
Syntaxe 2.0
Modules et
fonctions
Fonctions
La syntaxe d’import d’un package est similaire à celle d’un
IImports et
modules
module :
Installer des
packages >>> import package
Fichiers et
itérateurs
>>> from package.sous_package import module
Conclusion
References
Présentation
du module As
Présentation
de Python Lorsque l’on veut importer un module et le renommer, on peut
Types et utiliser le mot clé as :
Opérations
Syntaxe
>>> import math as m
>>> m.sqrt(4)
Modules et
fonctions 2.0
Fonctions
IImports et
modules
Installer des
packages
Fichiers et
itérateurs
Conclusion
References
Présentation
du module As
Présentation
de Python Lorsque l’on veut importer un module et le renommer, on peut
Types et utiliser le mot clé as :
Opérations
Syntaxe
>>> import math as m
>>> m.sqrt(4)
Modules et
fonctions 2.0
Fonctions
IImports et
modules
Installer des
packages
Remarque
Fichiers et
itérateurs Pour un soucis de clarté du code, on placera les imports au début
Conclusion du programme, même s’ils ne sont utilisés qu’à la fin.
References
Module Utilisation
Présentation
du module os manipulation de chemins de fichiers
Présentation
de Python
sys informations sur l’environnement
Types et
time heure courante, fuseaux horaires
Opérations datetime gestion des dates et des durées
Syntaxe
math fonctions mathématiques
Modules et
fonctions random nombres aléatoires
Fonctions
IImports et
decimal manipulation des nombres à virgule
modules
Installer des fractions manipulation des fractions
packages
Fichiers et
doctest documentation et tests unitaires
itérateurs sqlite3 gérer des BDD sqlite3
Conclusion
TKinter gérer des interfaces graphiques
References
matplotlib gérer des affichages graphiques
Présentation
du module
Présentation
Ce module introduit d’autres opérations pour les types
de Python numériques :
Types et
Opérations
Syntaxe
Modules et
fonctions
Fonctions
IImports et
modules
Installer des
packages
Fichiers et
itérateurs
Conclusion
References
Présentation
du module
Présentation
Ce module introduit d’autres opérations pour les types
de Python numériques :
Types et
Opérations • sinus, cosinus, . . .
Syntaxe
• racine carrée
Modules et
fonctions
Fonctions
• exponentielle
IImports et
modules • ...
Installer des
packages
Fichiers et
itérateurs
Conclusion
References
Présentation
du module
Présentation
Ce module introduit d’autres opérations pour les types
de Python numériques :
Types et
Opérations • sinus, cosinus, . . .
Syntaxe
• racine carrée
Modules et
fonctions
Fonctions
• exponentielle
IImports et
modules • ...
Installer des
packages
References
Présentation
du module
Présentation
de Python 1 Présentation du module 5 Modules et fonctions
Types et
Opérations
Fonctions
Syntaxe 2 Présentation de Python Imports et modules
Modules et Installer des packages
fonctions
Fonctions
Imports et
3 Types et Opérations
modules
IInstaller des
6 Fichiers et itérateurs
packages
Fichiers et 4 Syntaxe
itérateurs 7 Conclusion
Conclusion
References
Présentation
du module Python possède beaucoup de librairies open source. Il n’est pas
Présentation
de Python
rare au cours de l’écriture d’un programme d’avoir besoin de
Types et
l’aide d’une librairie externe.
Opérations
Syntaxe
Modules et
fonctions
Fonctions
Imports et
modules
IInstaller des
packages
Fichiers et
itérateurs
Conclusion
References
Présentation
du module Python possède beaucoup de librairies open source. Il n’est pas
Présentation
de Python
rare au cours de l’écriture d’un programme d’avoir besoin de
Types et
l’aide d’une librairie externe.
Opérations
Fichiers et
itérateurs
Conclusion
References
Présentation
du module Python possède beaucoup de librairies open source. Il n’est pas
Présentation
de Python
rare au cours de l’écriture d’un programme d’avoir besoin de
Types et
l’aide d’une librairie externe.
Opérations
Fichiers et
itérateurs
Conclusion
References
Présentation
du module Python possède beaucoup de librairies open source. Il n’est pas
Présentation
de Python
rare au cours de l’écriture d’un programme d’avoir besoin de
Types et
l’aide d’une librairie externe.
Opérations
Conclusion
References
Présentation
du module Python possède beaucoup de librairies open source. Il n’est pas
Présentation
de Python
rare au cours de l’écriture d’un programme d’avoir besoin de
Types et
l’aide d’une librairie externe.
Opérations
Problèmes
Présentation
du module
La méthode précédente pause souvent des problèmes :
Présentation
de Python
Types et
Opérations
Syntaxe
Modules et
fonctions
Fonctions
Imports et
modules
IInstaller des
packages
Fichiers et
itérateurs
Conclusion
References
Problèmes
Présentation
du module
La méthode précédente pause souvent des problèmes :
Présentation
de Python
le paquet est-il compatible avec mon architecture ? (système
Types et d’exploitation, autres paquets installés, . . .)
Opérations
Syntaxe
Modules et
fonctions
Fonctions
Imports et
modules
IInstaller des
packages
Fichiers et
itérateurs
Conclusion
References
Problèmes
Présentation
du module
La méthode précédente pause souvent des problèmes :
Présentation
de Python
le paquet est-il compatible avec mon architecture ? (système
Types et d’exploitation, autres paquets installés, . . .)
Opérations
où trouver le paquet ?
Syntaxe
Modules et
fonctions
Fonctions
Imports et
modules
IInstaller des
packages
Fichiers et
itérateurs
Conclusion
References
Problèmes
Présentation
du module
La méthode précédente pause souvent des problèmes :
Présentation
de Python
le paquet est-il compatible avec mon architecture ? (système
Types et d’exploitation, autres paquets installés, . . .)
Opérations
où trouver le paquet ?
Syntaxe
Fichiers et
itérateurs
Conclusion
References
Problèmes
Présentation
du module
La méthode précédente pause souvent des problèmes :
Présentation
de Python
le paquet est-il compatible avec mon architecture ? (système
Types et d’exploitation, autres paquets installés, . . .)
Opérations
où trouver le paquet ?
Syntaxe
Fichiers et
itérateurs
Conclusion
References
Problèmes
Présentation
du module
La méthode précédente pause souvent des problèmes :
Présentation
de Python
le paquet est-il compatible avec mon architecture ? (système
Types et d’exploitation, autres paquets installés, . . .)
Opérations
où trouver le paquet ?
Syntaxe
Fichiers et
itérateurs
Conclusion
References
Présentation
du module Python propose depuis 2011 un gestionnaire de paquets appelé
Présentation
de Python
pip3. Il fonctionne de la façon suivante :
Types et
Opérations pip3 install paquet
Syntaxe
Modules et
fonctions
Fonctions
Imports et
modules
IInstaller des
packages
Fichiers et
itérateurs
Conclusion
References
Présentation
du module Python propose depuis 2011 un gestionnaire de paquets appelé
Présentation
de Python
pip3. Il fonctionne de la façon suivante :
Types et
Opérations pip3 install paquet
Syntaxe
Modules et
pip3 a plusieurs avantages :
fonctions
Fonctions
Imports et
modules
IInstaller des
packages
Fichiers et
itérateurs
Conclusion
References
Présentation
du module Python propose depuis 2011 un gestionnaire de paquets appelé
Présentation
de Python
pip3. Il fonctionne de la façon suivante :
Types et
Opérations pip3 install paquet
Syntaxe
Modules et
pip3 a plusieurs avantages :
fonctions
Fonctions • il n’est plus nécessaire de télécharger le paquet
Imports et
modules
IInstaller des
packages
Fichiers et
itérateurs
Conclusion
References
Présentation
du module Python propose depuis 2011 un gestionnaire de paquets appelé
Présentation
de Python
pip3. Il fonctionne de la façon suivante :
Types et
Opérations pip3 install paquet
Syntaxe
Modules et
pip3 a plusieurs avantages :
fonctions
Fonctions • il n’est plus nécessaire de télécharger le paquet
Imports et
modules
IInstaller des • il n’est plus nécessaire de chercher les dépendances
packages
Fichiers et
itérateurs
Conclusion
References
Présentation
du module Python propose depuis 2011 un gestionnaire de paquets appelé
Présentation
de Python
pip3. Il fonctionne de la façon suivante :
Types et
Opérations pip3 install paquet
Syntaxe
Modules et
pip3 a plusieurs avantages :
fonctions
Fonctions • il n’est plus nécessaire de télécharger le paquet
Imports et
modules
IInstaller des • il n’est plus nécessaire de chercher les dépendances
packages
Conclusion
References
Présentation
du module Python propose depuis 2011 un gestionnaire de paquets appelé
Présentation
de Python
pip3. Il fonctionne de la façon suivante :
Types et
Opérations pip3 install paquet
Syntaxe
Modules et
pip3 a plusieurs avantages :
fonctions
Fonctions • il n’est plus nécessaire de télécharger le paquet
Imports et
modules
IInstaller des • il n’est plus nécessaire de chercher les dépendances
packages
Conclusion
• il permet de mettre à jour ou de désinstaller un paquet
References
Présentation
versions différentes d’une librairie, ou enfin lorsque l’on souhaite
de Python tester une nouvelle librairie sans modifier son environnement, on
Types et
Opérations
pourra utiliser virtualenv.
Syntaxe
Modules et
fonctions
Fonctions
Imports et
modules
IInstaller des
packages
Fichiers et
itérateurs
Conclusion
References
Présentation
versions différentes d’une librairie, ou enfin lorsque l’on souhaite
de Python tester une nouvelle librairie sans modifier son environnement, on
Types et
Opérations
pourra utiliser virtualenv.
Syntaxe
virtualenv s’installe avec pip et permet de créer des espaces de
Modules et
fonctions travail Python séparés. On crée un environnement virtuel avec la
Fonctions
Imports et commande :
modules
IInstaller des
packages
virtualenv /chemin/de/l/environnement
Fichiers et
itérateurs
Conclusion
References
Présentation
versions différentes d’une librairie, ou enfin lorsque l’on souhaite
de Python tester une nouvelle librairie sans modifier son environnement, on
Types et
Opérations
pourra utiliser virtualenv.
Syntaxe
virtualenv s’installe avec pip et permet de créer des espaces de
Modules et
fonctions travail Python séparés. On crée un environnement virtuel avec la
Fonctions
Imports et commande :
modules
IInstaller des
packages
virtualenv /chemin/de/l/environnement
Fichiers et
itérateurs
Conclusion
Pour travailler dans cet environnement, il suffit de lancer le fichier
References
“active.bat” du répertoire. Ensuite on peut installer les paquets
dont on a besoin et ils seront visibles uniquement au sein de
l’environnement virtuel.
Cours Intro Python 19/10/2018 150 / 169 v1.1.0
Déroulement de la présentation
Présentation
du module
Présentation
de Python
1 Présentation du module 5 Modules et fonctions
Types et
Opérations
Conclusion 4 Syntaxe
References
Présentation
du module
Présentation
de Python
1 Présentation du module 5 Modules et fonctions
Types et
Opérations
Types et
Opérations
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
IFichiers
Itérateurs
Conclusion
References
Conclusion
References
Présentation
de Python
Types et
Opérations
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
IFichiers
Itérateurs
Conclusion
References
Fichiers et
itérateurs
IFichiers
Itérateurs
Conclusion
References
Fichiers et
est exécuté.
itérateurs
IFichiers
Itérateurs
Conclusion
References
Fichiers et
est exécuté.
itérateurs
IFichiers Pour connaı̂tre le répertoire courant, on utilise la commande :
Itérateurs
Conclusion
“os.getcwd()”
References >>> os.getcwd()
’/home/sguinard/Bureau/Cours/Python/python_2017_2018’
Types et
Opérations
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
IFichiers
Itérateurs
Conclusion
References
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
IFichiers
Itérateurs
Conclusion
References
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
IFichiers
Itérateurs
Conclusion
References
Modules et
fonctions
Fichiers et
itérateurs
IFichiers
Itérateurs
Conclusion
References
Fichiers et
itérateurs
IFichiers
Itérateurs
Conclusion
References
Conclusion
References
References
References
Remarque
Si on cherche à ouvrir en écriture un fichier qui n’existe pas, il est
automatiquement créé.
Présentation
du module
Maintenant que nous savons ouvrir un fichier, il faut accéder aux
Présentation
de Python données à l’intérieur. Il existe plusieurs méthodes de lecture :
Types et
Opérations
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
IFichiers
Itérateurs
Conclusion
References
Présentation
du module
Maintenant que nous savons ouvrir un fichier, il faut accéder aux
Présentation
de Python données à l’intérieur. Il existe plusieurs méthodes de lecture :
Types et
Opérations • “read()” : lit le fichier en entier
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
IFichiers
Itérateurs
Conclusion
References
Présentation
du module
Maintenant que nous savons ouvrir un fichier, il faut accéder aux
Présentation
de Python données à l’intérieur. Il existe plusieurs méthodes de lecture :
Types et
Opérations • “read()” : lit le fichier en entier
Syntaxe • “readline()” : lit une ligne du fichier
Modules et
fonctions
Fichiers et
itérateurs
IFichiers
Itérateurs
Conclusion
References
Présentation
du module
Maintenant que nous savons ouvrir un fichier, il faut accéder aux
Présentation
de Python données à l’intérieur. Il existe plusieurs méthodes de lecture :
Types et
Opérations • “read()” : lit le fichier en entier
Syntaxe • “readline()” : lit une ligne du fichier
Modules et
fonctions • certaines méthodes lisent un fichier bit par bit
Fichiers et
itérateurs
IFichiers
Itérateurs
Conclusion
References
Présentation
du module
Maintenant que nous savons ouvrir un fichier, il faut accéder aux
Présentation
de Python données à l’intérieur. Il existe plusieurs méthodes de lecture :
Types et
Opérations • “read()” : lit le fichier en entier
Syntaxe • “readline()” : lit une ligne du fichier
Modules et
fonctions • certaines méthodes lisent un fichier bit par bit
Fichiers et
itérateurs
IFichiers
Itérateurs
>>> file = open("fichier.txt", "r")
Conclusion
>>> file.read()
’Hello world’
References
Présentation
du module
Pour écrire dans un fichier, on utilise la méthode “write()”, qui
Présentation
de Python prend en paramètre la chaı̂ne de caractères à écrire. Elle renvoie
Types et
Opérations
le nombre de caractères écrits.
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
IFichiers
Itérateurs
Conclusion
References
Présentation
du module
Pour écrire dans un fichier, on utilise la méthode “write()”, qui
Présentation
de Python prend en paramètre la chaı̂ne de caractères à écrire. Elle renvoie
Types et
Opérations
le nombre de caractères écrits.
Syntaxe
Cette méthode n’est utilisable que si le fichier est ouvert en mode
Modules et
écriture (“w” ou “a”).
fonctions
Fichiers et
itérateurs
IFichiers
Itérateurs
Conclusion
References
Présentation
du module
Pour écrire dans un fichier, on utilise la méthode “write()”, qui
Présentation
de Python prend en paramètre la chaı̂ne de caractères à écrire. Elle renvoie
Types et
Opérations
le nombre de caractères écrits.
Syntaxe
Cette méthode n’est utilisable que si le fichier est ouvert en mode
Modules et
écriture (“w” ou “a”).
fonctions
Présentation
du module
La manipulation de fichiers peut engendrer des erreurs, y compris
Présentation
de Python en dehors du programme. Il faut donc être prudent lorsque l’on
Types et
Opérations
manipule des fichiers.
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
IFichiers
Itérateurs
Conclusion
References
Présentation
du module
La manipulation de fichiers peut engendrer des erreurs, y compris
Présentation
de Python en dehors du programme. Il faut donc être prudent lorsque l’on
Types et
Opérations
manipule des fichiers.
Syntaxe
Pour simplifier l’utilisation des fichiers, Python possède le mot clé
Modules et
“with” qui garantit la fermeture automatique du fichier.
fonctions
Fichiers et
itérateurs
IFichiers
Itérateurs
Conclusion
References
Présentation
du module
La manipulation de fichiers peut engendrer des erreurs, y compris
Présentation
de Python en dehors du programme. Il faut donc être prudent lorsque l’on
Types et
Opérations
manipule des fichiers.
Syntaxe
Pour simplifier l’utilisation des fichiers, Python possède le mot clé
Modules et
“with” qui garantit la fermeture automatique du fichier.
fonctions
Conclusion
’Hello world’
References
Présentation
du module
Présentation
de Python
1 Présentation du module 5 Modules et fonctions
Types et
Opérations
Définition
Présentation
du module En Python, on itère sur beaucoup d’objets : listes, chaı̂nes de
Présentation
de Python
caractères, fichiers, . . . Ces objets sont des itérables, c’est-à-dire
Types et
qu’ils retournent des itérateurs.
Opérations
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Fichiers
IItérateurs
Conclusion
References
Définition
Présentation
du module En Python, on itère sur beaucoup d’objets : listes, chaı̂nes de
Présentation
de Python
caractères, fichiers, . . . Ces objets sont des itérables, c’est-à-dire
Types et
qu’ils retournent des itérateurs.
Opérations
Un itérateur est un objet ne pouvant que passer à la valeur
Syntaxe
suivante. Ils sont par exemple automatiquement utilisés dans les
Modules et
fonctions boucles for.
Fichiers et
itérateurs
Fichiers
IItérateurs
Conclusion
References
Définition
Présentation
du module En Python, on itère sur beaucoup d’objets : listes, chaı̂nes de
Présentation
de Python
caractères, fichiers, . . . Ces objets sont des itérables, c’est-à-dire
Types et
qu’ils retournent des itérateurs.
Opérations
Un itérateur est un objet ne pouvant que passer à la valeur
Syntaxe
suivante. Ils sont par exemple automatiquement utilisés dans les
Modules et
fonctions boucles for.
Fichiers et
itérateurs
Fichiers
Création
IItérateurs
Conclusion
Un itérateur est créé à l’aide de l’opérateur “iter()”.
References >>> i = iter(dico)
>>> type(i)
<class ’dict_keyiterator’>
Remarques
Présentation
du module
Présentation
de Python
Types et
Opérations
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Fichiers
IItérateurs
Conclusion
References
Remarques
Présentation
du module Les itérateurs ne possèdent qu’une seule méthode : “next()”,
Présentation qui permet de passer à l’élément suivant.
de Python
Types et
Opérations
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Fichiers
IItérateurs
Conclusion
References
Remarques
Présentation
du module Les itérateurs ne possèdent qu’une seule méthode : “next()”,
Présentation qui permet de passer à l’élément suivant.
de Python
Types et
Il est possible de créer plusieurs itérateurs pour un même
Opérations objet.
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
Fichiers
IItérateurs
Conclusion
References
Remarques
Présentation
du module Les itérateurs ne possèdent qu’une seule méthode : “next()”,
Présentation qui permet de passer à l’élément suivant.
de Python
Types et
Il est possible de créer plusieurs itérateurs pour un même
Opérations objet.
Syntaxe
>>> dico
Modules et
fonctions {’bleu’: ’0000FF’, ’vert’: ’00FF00’, ’rouge’: ’FF0000’, ’
Fichiers et
jaune’: ’00FFFF’}
itérateurs >>> i1 = iter(dico)
Fichiers
IItérateurs
>>> i2 = iter(dico)
Conclusion
References
>>> next(i1)
’bleu’
>>> next(i1)
’vert’
>>> next(i2)
’bleu’
Cours Intro Python 19/10/2018 161 / 169 v1.1.0
Itérateurs et fichiers
Présentation
du module
Présentation
de Python
Types et Les fichiers sont leurs propres itérateurs, on ne peut donc pas
Opérations
Syntaxe
appeler la fonction “iter()” dessus.
Modules et
fonctions
Fichiers et
itérateurs
Fichiers
IItérateurs
Conclusion
References
Présentation
du module
Présentation
de Python
Types et Les fichiers sont leurs propres itérateurs, on ne peut donc pas
Opérations
Syntaxe
appeler la fonction “iter()” dessus.
Modules et
Cela signifie qu’il est impossible d’avoir 2 itérateurs pour un
fonctions fichier (il n’est pas possible de lire 2 lignes d’un fichier en même
Fichiers et
itérateurs
temps).
Fichiers
IItérateurs
Conclusion
References
Fichiers
Présentation
du module En Python, les fichiers sont itérables avec une boucle for.
Présentation >>> for line in open("fichier.tct").readline():
de Python
print(line)
Types et
Opérations
H
Syntaxe
e
Modules et
fonctions l
Fichiers et
l
itérateurs o
Fichiers
IItérateurs
Conclusion
w
o
References
r
l
d
Présentation
du module
Présentation
de Python
1 Présentation du module 5 Modules et fonctions
Types et
Opérations
IConclusion
References 4 Syntaxe
Présentation
du module Python est un langage :
Présentation
de Python
Types et
Opérations
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
IConclusion
References
Présentation
du module Python est un langage :
Présentation
de Python • portable,
Types et
Opérations
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
IConclusion
References
Présentation
du module Python est un langage :
Présentation
de Python • portable,
Types et
Opérations • facile à prendre en main,
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
IConclusion
References
Présentation
du module Python est un langage :
Présentation
de Python • portable,
Types et
Opérations • facile à prendre en main,
Syntaxe • plus puissant que d’autres langages interprétés
Modules et
fonctions
(Matlab/Octave),
Fichiers et
itérateurs
IConclusion
References
Présentation
du module Python est un langage :
Présentation
de Python • portable,
Types et
Opérations • facile à prendre en main,
Syntaxe • plus puissant que d’autres langages interprétés
Modules et
fonctions
(Matlab/Octave),
Fichiers et • haut niveau,
itérateurs
IConclusion
References
Présentation
du module Python est un langage :
Présentation
de Python • portable,
Types et
Opérations • facile à prendre en main,
Syntaxe • plus puissant que d’autres langages interprétés
Modules et
fonctions
(Matlab/Octave),
Fichiers et • haut niveau,
itérateurs
IConclusion
• ou la syntaxe est gérée par des indentations,
References
Présentation
du module Python est un langage :
Présentation
de Python • portable,
Types et
Opérations • facile à prendre en main,
Syntaxe • plus puissant que d’autres langages interprétés
Modules et
fonctions
(Matlab/Octave),
Fichiers et • haut niveau,
itérateurs
IConclusion
• ou la syntaxe est gérée par des indentations,
References • possédant une communauté très active,
• ...
Présentation
du module
Présentation
de Python Python permet aussi de :
Types et
Opérations
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
IConclusion
References
Présentation
du module
Présentation
de Python Python permet aussi de :
Types et
Opérations • gérer automatiquement la documentation (voir en TP),
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
IConclusion
References
Présentation
du module
Présentation
de Python Python permet aussi de :
Types et
Opérations • gérer automatiquement la documentation (voir en TP),
Syntaxe • gérer des exceptions (voir en TP),
Modules et
fonctions
Fichiers et
itérateurs
IConclusion
References
Présentation
du module
Présentation
de Python Python permet aussi de :
Types et
Opérations • gérer automatiquement la documentation (voir en TP),
Syntaxe • gérer des exceptions (voir en TP),
Modules et
fonctions • faire de la programmation orienté objet,
Fichiers et
itérateurs
IConclusion
References
Présentation
du module
Présentation
de Python Python permet aussi de :
Types et
Opérations • gérer automatiquement la documentation (voir en TP),
Syntaxe • gérer des exceptions (voir en TP),
Modules et
fonctions • faire de la programmation orienté objet,
Fichiers et
itérateurs
• gérer des bases de données,
IConclusion
References
Présentation
du module
Présentation
de Python Python permet aussi de :
Types et
Opérations • gérer automatiquement la documentation (voir en TP),
Syntaxe • gérer des exceptions (voir en TP),
Modules et
fonctions • faire de la programmation orienté objet,
Fichiers et
itérateurs
• gérer des bases de données,
IConclusion • réaliser des interfaces graphiques (voir en TP)
References
Présentation
du module
Pour aller plus loin il y aussi beaucoup de librairies open source :
Présentation
de Python
Types et
Opérations
Syntaxe
Modules et
fonctions
Fichiers et
itérateurs
IConclusion
References
Présentation
du module
Pour aller plus loin il y aussi beaucoup de librairies open source :
Présentation
de Python
• numpy (calcul scientifique)
Types et
Opérations • pyQt (interfaces graphiques et librairies QT)
Syntaxe
• OpenCV (traitement d’images)
Modules et
fonctions • CGAL (géométrie algorithmique)
Fichiers et
itérateurs • Django (développement web)
IConclusion
• Panda3D (moteur pour faire de la 3D)
References
• pyinstaller (création d’exécutables pour toute plateforme)
Présentation
Internet Community. Stack Overflow. https:
du module //stackoverflow.com/questions/tagged/python.
Présentation
de Python
[Online; accessed 29-August-2017]. 2017.
Types et
Opérations
Mark Lutz. Programming python. Vol. 8. O’Reilly, 1996.
Syntaxe Eric Matthes. Python crash course: a hands-on,
Modules et
fonctions
project-based introduction to programming. No Starch
Fichiers et Press, 2015.
itérateurs
Conclusion
Luciano Ramalho. Fluent Python. O’Reilly, 2015.
IReferences Guido Van Rossum and Fred L Drake Jr. Python reference
manual. Centrum voor Wiskunde en Informatica
Amsterdam, 1995.
mohamed.boussaha@ign.fr
victor.coindet@ensg.eu
stephane.guinard@ign.fr
Environnements de développements
Différences format et %
Bug avec % et tuple (obligé d’écrire entres paranthèses et
avec une virgule) et aussi avec Decimal
% compatible avec python 2.5
Format peut être parsé dans des appels à fonctions
Format pas compatible avec les unicode string
Retour
Définition
Lorsque la valeur retournée par une fonction est calculable à
l’aide d’une seule instruction, Python permet de simplifier la
syntaxe de la fonction avec le mot clé “lambda” :
lambda paramètres : instruction.
Retour
Cours Intro Python 19/10/2018 5/8 v1.1.0
Fonctions anonymes
Définition
Lorsque la valeur retournée par une fonction est calculable à
l’aide d’une seule instruction, Python permet de simplifier la
syntaxe de la fonction avec le mot clé “lambda” :
lambda paramètres : instruction.
Retour
Cours Intro Python 19/10/2018 5/8 v1.1.0
Fonctions anonymes
Définition
Lorsque la valeur retournée par une fonction est calculable à
l’aide d’une seule instruction, Python permet de simplifier la
syntaxe de la fonction avec le mot clé “lambda” :
lambda paramètres : instruction.
Remarque
À la différence des fonctions classiques, les fonctions anonymes
sont des expressions et peuvent donc être employées dans une
instruction sans définition préalable.
Retour
Cours Intro Python 19/10/2018 5/8 v1.1.0
Générateurs
Définition
En Python, il existe un type de fonctions spécifiques permettant
de retourner un itérateur : les générateurs. Leur syntaxe est
similaire aux fonctions, si ce n’est que le mot clé “return” est
remplacé par le mot clé “yield”.
Définition
En Python, il existe un type de fonctions spécifiques permettant
de retourner un itérateur : les générateurs. Leur syntaxe est
similaire aux fonctions, si ce n’est que le mot clé “return” est
remplacé par le mot clé “yield”.
def generateur(x):
n = x ** 2
yield n
>>> generateur(3)
<generator object generateur at 0x7f2354ac9a98>
9
Cours Intro Python 19/10/2018 6/8 v1.1.0
Générateurs
Remarques
Un générateur peut comporter plusieurs “yield”.
Tout ce qui peut être fait avec un générateur peut l’être avec
une fonction classique.
Les générateurs utilisent en général moins d’espace mémoire.
Retour
Remarques
Un générateur peut comporter plusieurs “yield”.
Tout ce qui peut être fait avec un générateur peut l’être avec
une fonction classique.
Les générateurs utilisent en général moins d’espace mémoire.
def generateur(liste):
for i in liste:
yield i ** 2
def fonct_carre(liste):
liste2 = list()
for i in liste:
liste2.append(i ** 2)
return liste2
Retour