Info 4
PROGRAMMATION EN PYTHON
premiers éléments
Notion de programmation
Un programme est la traduction d’un algorithme dans un langage « compréhensible » par une machine.
Notre langage de programmation sera Python.
Dans l’immédiat, il s’agit donc de se familiariser avec Python, et les principaux objets qui nous permettront de construire des programmes.
Dans un environnement de développement...
IAu lancement d’un environnement de développement dédié à Python (IDLE ou
Spyder, en ce qui nous concerne), s’ouvre un interpréteur de commande.
ILa série de >>> est une invitation à saisir des commandes : il suffit de saisir à
la suite une instruction, puis d’appuyer sur la touche « Entrée » du clavier pour
exécuter cette instruction.
ICette console Python peut fonctionner comme une simple calculatrice.
Les données numériques manipulées sont essentiellement de deux types :int pour
les entiers, et float pour les nombres à virgule flottante.
Les opérations sur les entiers sont l’addition (+), la soustraction (), la multi-
plication (*), l’exponentiation (**) et la division euclidienne (dont le quotient
se calcule à l’aide de la commande //, et le reste à l’aide de %).
Les opérations envisageables avec les nombres à virgules flottante sont l’addi-
tion (+), la soustraction (), la multiplication (*), l’exponentiation (**) et la
« division réelle » (/).
Nota bene
L’écriture scientifique d’un nombre flottant par Python mérite une petite tra-
duction : par exemple, le nombre 6,022 ×1023 se lit 6.022e23.
Les opérations faisant intervenir à la fois des données de type int et des don-
nées de type float sont envisageables : les entiers sont alors considérés comme
des flottants.
On peut « forcer » Python à considérer une expression de type int comme
étant de type float, à l’aide de l’instruction float(expression) : on dit
alors qu’on a converti l’expression considérée en un flottant.
La conversion d’un flottant en un entier se fait à l’aide de la commande
int(expression), qui effectue simplement la troncature du réel considéré.
1 Types d’objets en Python
1. Les nombres sont définis en deux types que l’on vient d’évoquer : les entiers
(type int) et les flottants (type float).
2. Les booléens (type bool)
:::::::
Syntaxe:::
des
::::::::::
opérations:::
sur
:::
les
:::::::::
booléens
non(...) s’écrit not(...)
... et ... s’écrit ... and ...
... ou ... s’écrit ... or ...
::::::::::::
Comparaisons
:::
de:::::
deux::::::::
variables
Etant données deux variables nommées aet b, l’affirmation « La valeur de a
est égale à celle de b»est un booléen, puisqu’elle est vraie ou fausse.
En Python, cette comparaison des valeurs de aet de bs’écrit a==b .
Lorsque les valeurs stockées dans les variables aet bsont des nombres, d’autres
comparaisons sont envisageables. Par exemple :
a<b teste si la valeur stockée en aest strictement inférieure à celle de b;
a>=b teste si la valeur stockée en aest supérieure à celle de b;
a!=b teste si la valeur stockée en aest différente de celle de b.
3. Les chaînes de caractères (type char) se présentent sous forme de textes déli-
mités par :::
des :::::::::
guillemets, ou :::
des:::::::::::
apostrophes, voire :::
des:::::::
triplets:::
de :::::::::
guillemets.
"blabla" ’blabla’ """blabla"""
4. Les listes (type list) s’écrivent sous la forme de successions finies d’objets de
types quelconques, délimitées par des crochets, numérotés à partir de l’indice 0.
Par exemple, L=["truc"
| {z }
L[0]
,"bidule"
| {z }
L[1]
,"chose"
| {z }
L[2]
]est une liste à trois éléments, les-
quels sont tous des chaînes de caractères.
2 Instructions en Python
IAffectation d’une variable
aétant une variable, l’affectation a3se code, en Python : a=3 .
En particulier, :
a
::::::
ayant :::
été :::::::::::::
préalablement ::::::::
initialisée, l’incrémentation aa+1 s’écrit a=a+1 :
cette instruction ne doit pas être confondue avec la condition (booléenne) a==a+1 !
IInstruction d’entrée
L’instruction reponse=input("Entrer une valeur") permet d’affecter dans
la variable reponse la réponse de l’utilisateur à la phrase « Entrer une valeur »
,chaîne de caractères
::::::::::::::::
Attention au type !
Dans le cadre de l’instruction ci-dessus, la donnée affectée
à la variable reponse est une chaîne de caractères.
Si celle-ci doit être, ensuite, interprétée comme un nombre,
il faudra la convertir comme tel, via la commande :
int(reponse) si reponse est un entier ;
float(reponse) si reponse est un flottant.
IInstruction de sortie
L’instruction print("Du texte ou ",autre) permet d’afficher, lors de l’exé-
cution d’un programme, des « blocs » de données de tout type : ici, la chaîne de
caractère « Du texte et » sera écrite, et suivie de la valeur de la variable autre.
IInstruction conditionnelle
Pour exécuter une (ou plusieurs) instruction(s)
si une condition (booléenne) est réalisée, on écrira : if condition :
instruction(s)
Quand on écrit la commande if condition:, un alinéa (appelé indentation)
apparaît automatiquement lors du retour à la ligne.
Cette indentation est signifiante : toutes les instructions écrites après un tel
alinéa ne seront exécutées que si la condition est vérifiée.
Pour qu’une instruction soit effectuée indépendamment de la condition, on
la décalera pour qu’elle soit écrite au même niveau d’indentation que le if.
On peut aussi préciser des instructions à exécuter
si la condition n’est pas réalisée, avec : if condition :
instruction(s)
else :
autre(s) instruction(s)
... et si l’on envisage d’autres alternatives,
on peut utiliser la syntaxe : if condition :
instruction(s)
elif autre condition :
autre(s) instruction(s)
else :
encore d’autres instructions
IItération avec condition de continuation
Lorsqu’on veut qu’une (ou plusieurs) instruction(s) se répète(nt)
tant qu’une condition est vérifiée, on écrit : while condition :
instruction(s)
Comme précédémment, une indentation délimite le bloc d’instructions à
effectuer tant que la condition est vérifiée.
ATTENTION ! ::
La:::::::::
condition ::::
doit:::::::
évoluer:
à
:::::::
chaque::::::::
itération
:::::
pour::::::
éviter
:
le
::::::
risque
::::
que::
la:::::::
boucle ::
se::::::
répète:::::::::::
indéfiniment.
IItération avec compteur
Si on a l’intention de répéter nfois un certain bloc d’instructions,
la syntaxe dans Python est : for compteur in range(n) :
instruction(s)
Comme précédemment, l’indentation qui suit la ligne indique quelles sont
les instructions qui vont être répétées.
Dans le cadre de la boucle for compteur in range(n) : , la variable
compteur parcourt l’ensemble des entiers compris entre 0 et n1.
Avant de se lancer...
IPour obtenir des explications concernant le fonctionnement d’une commande,
il suffit d’écrire, dans l’interpréteur, help(commande).
IUn programme écrit en Python est une succession de lignes écrites dans un
langage qui manque parfois de clarté pour la personne qui le lit.
Or, si l’on veut y apporter des modification, il est fondamental d’accéder
rapidement et simplement à une partie précise de celui-ci, ce qui nécessite
d’en avoir une lecture parfaitement claire.
Pour cela, on fera figurer, dans un programme, des ::::::::::::
commentaires : il s’agit
de textes expliquant pour un lecteur humain le fonctionnement de telle ou
telle partie du programme, et ne devant pas être interprétés par l’ordinateur
au moment de l’exécution. Pour cela, il suffit de précéder ces explications du
symbole #.
1 / 2 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !