Python 2.4 : Demande de données à l'utilisateur
Pour rendre nos programmes Python interactifs, nous devons pouvoir demander une donnée à l'utilisateur. C'est exactement le rôle de la fonction input(), qui affiche un message à l'écran et attend que l'utilisateur tape une réponse suivie de la touche Entrée. La valeur saisie est alors retournée par la fonction et peut être stockée dans une variable.
Utilisation de input()
La fonction input() prend en argument optionnel le texte à afficher avant la saisie. Voici le schéma typique pour demander un nom et l'utiliser ensuite :
nom = input("Quel est ton nom ? ")
print("Bonjour " + nom)
Quand le programme arrive à input(), il est mis en pause et attend que l'utilisateur tape sa réponse. Tant que la touche Entrée n'est pas pressée, le programme reste bloqué. C'est ce qu'on appelle un appel bloquant. Pensez à laisser un espace à la fin du message, sinon la réponse de l'utilisateur viendra se coller au texte de la question.
Les points importants sur les variables :
- On déclare une variable avant de l'utiliser, jamais l'inverse
- Une variable peut être réaffectée à tout moment
- input() retourne toujours une chaîne de caractères
- Le message de input() est optionnel mais conseillé
- L'intérêt des variables est de manipuler des données inconnues à l'avance
L'ordre déclaration puis appel est non négociable : si vous essayez d'utiliser une variable qui n'a pas encore été créée, Python lève une NameError. C'est précisément cet aspect dynamique qui fait l'intérêt des variables : leur valeur peut changer à chaque exécution selon ce que tape l'utilisateur. À très bientôt pour la suite du cours sur la demande de plusieurs données.