On a jusqu’ici utilisé Python en mode interactif, à la manière d’une calculatrice. Les instructions (ou commandes) sont ainsi, l’une après l’autre, entrées au clavier, interprétées et suivies d’un résultat souvent réutilisé par la suite.
Si elle en vaut la peine, une séquence d’instructions peut être sauvegardée dans un fichier texte (on parle de script Python).
On peut dès lors ouvrir ce script et l’exécuter, de façon automatisée, comme si les instructions qu’il contient étaient à nouveau entrées au clavier (chronologiquement de la première à la dernière ligne).
Dérouler les mêmes instructions dans le même ordre doit bien sûr posséder un minimum d’intérêt. Pour apporter un peu de profondeur et/ou de fantaisie à tout ça, on peut, à l’intérieur du script lui-même :
- répéter un certain nombre de fois un bloc d’instructions
- n’exécuter certaines instructions que si (ou que tant qu’) une condition est vraie
- appeler un autre script (et pourquoi pas le même ? à suivre…)
- orienter le déroulement du script suivant certaines informations fournies par l’utilisateur (informations qui pourraient par exemple être passées au démarrage du script : on parle alors des paramètres d’appel).
Évidemment, tout cela est possible en Python. On se contentera ici d’une première approche modeste (d’autant que de nombreuses caractéristiques du langage n’ont pas encore été abordées).
Les interactions d’un script avec l’utilisateur se feront essentiellement par l’attente de données entrées au clavier, et par l’affichage de résultats ou de messages à l’écran.
L’expression input(message ) affiche message à l’écran (sans passer à la ligne), attend que l’utilisateur valide par “Entrée” une réponse au clavier, et renvoie cette réponse sous forme de chaîne de caractères.
|
1 2 3 4 |
>>> n = input('entrez un entier: ') # ici on va placer la réponse dans la variable n entrez un entier: 421 >>> n # le contenu de la variable n est une chaîne de caractères '421' |
On peut bien sûr directement convertir la réponse reçue par input en un type particulier (int et float notamment) :
|
1 2 3 4 |
>>> n = int(input('entrez votre réponse: ')) entrez votre réponse: 1234 >>> n # ici la variable n contient bien un entier 1234 |
La fonction print permet d’afficher des informations à l’écran. Il s’agit le plus souvent de messages informatifs qui peuvent intervenir à tout moment de l’exécution du script. On ne confondra pas avec l’instruction return dont le rôle est de renvoyer le résultat d’une fonction (et qui met fin à l’exécution de celle-ci).
Les exemples ci-après illustrent quelques possibilités de la fonction print.
On voit que les chaînes de caractères sont affichées sans leurs délimiteurs extérieurs (guillemets ou apostrophes).
On voit également qu’il est possible d’afficher successivement plusieurs objets sur une même ligne (ils sont alors séparés par un espace, mais on peut préciser un autre séparateur avec l’option sep=). Un affichage par print se termine par un passage à la ligne (mais on peut préciser un autre mode de terminaison avec l’option end=)
|
1 2 3 4 5 6 7 |
>>> print('a', 11, 'b', 2222, 'c', 333); print('d', 1/3, 'e', 1/7); a 11 b 2222 c 333 d 0.3333333333333333 e 0.14285714285714285 >>> print('a', 1, 'b', 2, 'c', 3, sep='**') a**1**b**2**c**3 >>> print('a', 1, 'b', 2, 'c', 3, end=' --- '); print('d', 5, 'e', 7); a 1 b 2 c 3 --- d 5 e 7 |
Retour à l’accueil du cours Python/Numpy
Sommaire du chapitre 3
- Entrée au clavier (input) et affichage à l’écran (print)
- Nécessité de délimiter des blocs d’instructions
- L’importance fondamentale de l’indentation en Python
- Branchements conditionnels if…elif…else…
- Expressions conditionnelles
- Répétitions conditionnelles (while)
- Notion d’intervalle
- Répétitions inconditionnelles (boucles for)
- L’instruction pass