Académique Documents
Professionnel Documents
Culture Documents
Programmation en Python
Cours 8/8
Laurent Pointal
laurent.pointal @ limsi.fr
@ laposte.net
● Modèles de programmation
● Séquentiel
● Événementiel
● Multitâche
● Interruption
● Types de données
● Variables, affectation
● Tests
● Boucles for / while
● Ruptures de séquences break / continue
8/8
● Fonctions
v2.2 ● Modules
● Gestion d’erreurs par exceptions
Laurent Pointal
nettoyages
Fin
Programmation événementielle
4
18
Début Typiquement: les interfaces graphiques
initialisations
Cours d’Informatique Scientifique
Département Mesures Physiques
Évènements:
● utilisateur (clavier, souris…)
Suivant l'évènement
8/8 boucle
v2.2 événementielle
Laurent Pointal
nettoyages
Fin
Programmation multitâche
5
18
Début Compliqué à appréhender, complexe.
initialisations
Cours d’Informatique Scientifique
Département Mesures Physiques
8/8
v2.2
Laurent Pointal
nettoyages
Les différents “fils d’exécution”
Fin (threads) sont exécutés simultanément.
Programmation sur interruption
6
18
Début Typiquement: les systèmes d’exploitation
initialisations
Cours d’Informatique Scientifique
Évènements:
Département Mesures Physiques
programme
séquentiel,
évènementiel,
multitache
8/8
v2.2
Laurent Pointal
A tout moment:
nettoyages ● pause dans le programme en cours
● Fichiers et entrées/sorties
● Écriture, lecture, input/print
Types de base
8
18
True expressions booléennes
int bool < > <= >= == !=
Cours d’Informatique Scientifique
False
Département Mesures Physiques
or and not
float
complex opérations
str + *
opérations s[index]
+ - * / // % ** s[début:fin:pas]
(expression) len(s)
8/8 existence module math existence de méthodes
v2.2 "{}".format(v)
...
transtypage
Laurent Pointal
str(12)
int(s)
...
Types conteneurs
9
18 tuple
set
list
Cours d’Informatique Scientifique
Département Mesures Physiques
opérations
+ * dict
l[index]
opérations
l[début:fin:pas]
in not in
len(l)
d[clé]
existence de méthodes
existence de méthodes
l.append(12)
d.keys()
l.sort()
d.values()
...
...
opérations
8/8 max(l)
v2.2 min(l)
sum(l)
Laurent Pointal
nom valeur
8/8
v2.2
Incrémentation x = x+1
Laurent Pointal
Dans l’ordre
Département Mesures Physiques
nettoyages
Fin
Fonctions
12
18
définition appels
def Fonction(paramètres): res = Fonction(arguments)
Cours d’Informatique Scientifique
Département Mesures Physiques
...
return résultat
arguments
paramètres
Fonction
8/8
v2.2
return ...
Laurent Pointal
...
return résultat
paramètres
Fonction
8/8
v2.2
return ...
Laurent Pointal
Fonctions... vu de l'appel
14
18
appels
res = Fonction(arguments)
Cours d’Informatique Scientifique
Département Mesures Physiques
arguments
8/8
v2.2
Laurent Pointal
Réutilisation
Département Mesures Physiques
● Tests
● Petits scripts outils
définition utilisation
●
Fichiers
16
18
input("x=") retourne str !
Entrées/sorties clavier/console texte:
Cours d’Informatique Scientifique
print("texte")
Département Mesures Physiques
f = open(nom,mode,encodage)
f.write("texte")
8/8
v2.2
s = f.read()
Laurent Pointal
f.close()
Construire... un algorithme
17
18
d'instructions.
B.Cordeau
Problème
Outils
(concepts, langage, bibliothèques)
8/8
v2.2
Algorithme Solution
Laurent Pointal
● 2h
● Documentations autorisées:
➢ Abrégé Python 3
➢ Mémento Python 3
➢ Une feuille A4 recto/verso avec vos notes
● Pas de calculatrice, tél & Co.
8/8
v2.2
Laurent Pointal