• Aucun résultat trouvé

Python Instructions de base

N/A
N/A
Protected

Academic year: 2022

Partager "Python Instructions de base"

Copied!
12
0
0

Texte intégral

(1)

Python

Instructions de base

Nicolas Delestre

(2)

Rappels

Objets, attributs et m´ethodes Tout est objet en Python

Un objet a un ´etat d´efini par les valeursde ces attributs

On acc`ede `a un attributad’un objet `a l’aide de la notation point´ee (o.a)

On peut agir (interroger, modifier, obtenir d’autres objets) sur l’objet en envoyant un message `a un objet

On envoie un message (m) `a un objeto(ou on invoque, ou appelle, une m´ethodemd’un objet o) `a l’aide de la notation point´ee avec entre parenth`eses (obligatoires) des

param`etres effectifs (optionnels) : o.m()

Python cherche alors la m´ethode (le code python) `a interpr´eter

(3)

Affectation

=

Instruction qui permet de r´ef´erencer un objet `a l’aide d’une variable

Affectation des r´ef´erences

>>> a = 12.5

>>> b = 12.5

>>> c = a

>>> a is b False

>>> a is c True

Possibilit´e de faire plusieurs affectations en une seule fois (utilisation des tuples)

>>> a,b = 1,2

>>> a,b = b,a

>>> a 2

>>> a = 1,2

>>> a (1,2)

L’affectation est aussi une op´eration, les r´ef´erences retourn´ees sont celles affect´ees

>>> a = b = 1

>>> a 1

>>> b 1

Attention

Par abus de langage on dit pour d´ecrire l’instruction a = 1que

a vaut 1mais on devrait dire que a r´ef´erence l’objet int 1

(4)

Conditionnelle

if [elif] [else]

Syntaxe : if condition:

...

[elif condition:

...

] [else:

...

]

if anciennete < 6:

nb_jours = anciennete elif anciennete < 12:

nb_jours = 2 * anciennete else:

nb_jours = 28 if cadre:

if age >= 35 and anciennete >= 36:

nb_jours = nb_jours + 2

if age >= 45 and anciennete >= 60:

nb_jours = nb_jours + 4

(5)

It´ eration d´ eterministe 1 / 3

It´erable

Objet dont on peut parcourir les valeurs

Les s´equences, les ensembles et les dictionnaires sont des it´erables (pour les dictionnaires cela permet de parcourir les cl´es)

for in [else]

Syntaxe :

for e in iterable:

...

[else:

..

]

La partieelseest ex´ecut´ee lorsque l’it´erable a ´et´e parcouru enti`erement (pas ex´ecut´ee si on sort de la boucle `a cause d’unbreak)

(6)

It´ eration d´ eterministe 2 / 3

>>> for jour in ("lundi", "mardi", "mercredi", "jeudi", \ ... "vendredi", "samedi", "dimanche"):

... print(jour) ...

lundi mardi mercredi jeudi vendredi samedi dimanche

(7)

It´ eration d´ eterministe 3 / 3

Fonction enumerate Syntaxe :

for i,e in enumerate(iterable):

...

>>> for numero, jour in enumerate(("lundi", "mardi", "mercredi",\

... "jeudi", "vendredi", "samedi",\

... "dimanche")):

... print(f"{numero} {jour}") ...

0 lundi 1 mardi 2 mercredi 3 jeudi 4 vendredi 5 samedi 6 dimanche

(8)

It´ eration ind´ eterministe

while [else]

Syntaxe :

while condition:

...

[else:

...

]

La partieelse est ex´ecut´ee lorsque la condition devient fausse (pas ex´ecut´ee si on sort de la boucle `a cause d’unbreak)

(9)

Op´ erateur de morse

La version 3.8 de python a introduit l’op´erateur de morse qui permet de r´ealiser des affectations dans les conditions des conditionnelles ou des it´erations ind´eterministes Syntaxe ::=

Exemple inspir´e dehttps://www.dad3zero.net/202002/python-walrus-operator/

long = len(ma_sequence) if long > 10:

print(f"Vous avez {long} ´el´ements")

if (long := len(ma_sequence)) > 10:

print(f"Vous avez {long} ´el´ements")

(10)

Autres instructions 1 / 2

Instructions qui peuvent ˆetre utiles

pass instruction qui ne fait rien : utile lorsque l’on reporte le d´eveloppement d’un corps (d’un if,for,whileou une fonction) `a plus tard

breakinstruction qui permet de sortir pr´ematur´ement d’une it´eration

continueinstruction qui permet de passer `a l’it´eration suivante sans interpr´eter les instructions qui suivent

delinstruction qui permet de supprimer la r´ef´erence d’une variable

>>> a=(1, 2)

>>> del(a)

>>> a

Traceback (most recent call last):

File "<stdin>", line 1, in <module>

is not

(11)

Autres instructions 2 / 2

Instructions qui seront pr´esent´ees dans de futures cours

importet from...importinstructions qui permettent d’importer un module, une fonction une classe, etc.

try...catchet raiseinstructions qui permettent de g´erer les erreurs (exceptions) returninstruction qui permet de sortir d’une fonction en retournant (optionnellement) la r´ef´erence vers un objet

yieldinstruction qui permet de d´efinir des g´en´erateurs

assertinstruction qui permet d’ajouter une assertion (v´erification)

globalet nonlocalinstructions qui permettent de modifier la port´ee d’une ou de plusieurs variables qui seraient locales sans ces instructions

(12)

Conclusion

Dans ce cours nous avons. . .

rappel´e que tout est objet en Python et qu’une variable Python r´ef´erence un objet efini le rˆole de l’instruction d’affectation

list´e les instructions permettant de coder les sch´emas conditionnels et it´eratifs list´e d’autres instructions dont la plupart seront pr´esent´es dans de futurs cours

Références

Documents relatifs

Appuyez sur le bouton max/min pour afficher la température maximale atteinte dans une période de 24h Press the max/min button to display the maximum temperature achieved in a

2020 - V23 Le détecteur de mouvement pour montage au plafond et le détecteur de présence KINASGARD ® DBWF ⁄ DBWF-C détecte la présence de personnes et de mouvement et est

pièces du dessus de table en se servant des loquets de sécurité lors de l'utilisation d'extension.

Gc Device protection level (EPL) classification Gc for advanced safety level for use in potentially gas explosive atmospheres where there is no ignition risk during normal operation

Dans le premier script de l’exemple 2, la liste L est modifiée après l’utilisation de append mais la variable L n’a pas changé d’adresse.. id(L) pointe vers la même adresse

1726K-2 EK / CK Footboard with drawer &amp; Slat / Pied de Lit avec tiroir et lattes-Tres Grand Lit.. A Queen / EK / CK Footboard with drawer &amp; slat / Pied de Lit avec

Lorsqu'on veut utiliser des fonctions graphiques, commencer par : import du package graphique import matplotlib. pyplot as

Secure the straight tube on to the fixture shade, then secure the canopy assembly on to the fixture shade and tighthen it in place.. Secure the threaded tube on to the fixture