
Afficher et recevoir des informations
Découvrez comment vos programmes Python peuvent communiquer : afficher des messages avec `print()` et obtenir des données utilisateur grâce à `input()`. Essentiel pour l'interactivité.
Communiquer avec l'utilisateur : la fonction `print()`
L'une des premières choses que l'on apprend en programmation est comment faire en sorte que notre programme affiche des informations. En Python, la fonction `print()` est le principal outil pour cette tâche. Elle permet d'envoyer du texte, des valeurs de variables, ou les résultats d'expressions vers la sortie standard, qui est généralement la console ou le terminal où vous exécutez votre script. Maîtriser `print()` est essentiel non seulement pour présenter des résultats à l'utilisateur final, mais aussi comme un outil de débogage simple et efficace pour inspecter l'état de votre programme à différents points de son exécution.
Nous explorerons en détail comment utiliser `print()` pour afficher divers types de données, des chaînes de caractères simples aux messages formatés plus complexes intégrant des variables. Vous verrez également comment contrôler certains aspects de l'affichage, comme l'ajout de séparateurs entre plusieurs éléments ou la modification du caractère de fin de ligne.
Ce sous-chapitre vous fournira les bases nécessaires pour que vos programmes puissent "parler" et rendre compte de ce qu'ils font, une étape cruciale pour créer des applications utiles et compréhensibles.
Obtenir des données : la fonction `input()`
Un programme devient vraiment interactif lorsqu'il peut recevoir des informations de la part de l'utilisateur pendant son exécution. En Python, la fonction `input()` est conçue précisément pour cela. Elle met le programme en pause, affiche un message optionnel à l'utilisateur (appelé une invite ou "prompt"), et attend que celui-ci saisisse du texte au clavier et appuie sur la touche Entrée. La chaîne de caractères ainsi saisie par l'utilisateur est alors retournée par la fonction `input()` et peut être stockée dans une variable pour une utilisation ultérieure.
Nous verrons comment structurer l'appel à `input()` pour guider l'utilisateur et comment récupérer la donnée qu'il fournit. Un point d'attention majeur sera le type de données retourné par `input()`, qui est toujours une chaîne de caractères. Cela a des implications importantes si vous attendez un nombre ou un autre type de données, et nous aborderons les techniques de conversion nécessaires.
Comprendre `input()` ouvre la porte à la création de programmes qui s'adaptent aux besoins et aux choix de l'utilisateur, rendant vos applications plus dynamiques et personnalisées.
Attention aux types : convertir les entrées utilisateur
Comme mentionné précédemment, la fonction `input()` retourne systématiquement une chaîne de caractères (`str`), quelle que soit la nature de la saisie de l'utilisateur. Si l'utilisateur tape "42", `input()` retournera la chaîne `"42"`, et non le nombre entier `42`. Cette distinction est cruciale car vous ne pouvez pas effectuer directement des opérations arithmétiques sur des chaînes de caractères comme vous le feriez avec des nombres.
Ce sous-chapitre se concentrera sur la nécessité et les méthodes de conversion des données obtenues via `input()`. Nous apprendrons à utiliser les fonctions de conversion de type intégrées à Python, telles que `int()` pour convertir en entier, `float()` pour convertir en nombre à virgule flottante, et potentiellement d'autres si le besoin se présente. Vous découvrirez également comment anticiper et gérer les erreurs qui peuvent survenir si l'utilisateur fournit une entrée qui ne peut pas être convertie dans le type attendu (par exemple, s'il tape du texte alors qu'un nombre est attendu).
La gestion correcte des types d'entrée est une compétence fondamentale pour écrire des programmes robustes qui ne plantent pas face à des saisies utilisateur inattendues.
Exemple concret : programme qui demande le nom et dit bonjour
Pour synthétiser les concepts d'affichage et de réception d'informations, ainsi que la manipulation basique de chaînes, nous construirons un petit programme interactif. Ce programme demandera à l'utilisateur de saisir son nom, puis il utilisera cette information pour afficher un message de salutation personnalisé.
Cet exemple pratique illustrera l'enchaînement typique : utiliser `print()` pour poser une question (ou `input()` avec une invite), récupérer la réponse avec `input()`, stocker cette réponse dans une variable, puis utiliser `print()` à nouveau, potentiellement avec une f-string ou une concaténation, pour afficher un message dynamique incluant la donnée fournie par l'utilisateur.
Ce sera votre première incursion dans la création d'un programme qui dialogue, même simplement, avec l'utilisateur, jetant les bases pour des interactions plus complexes à venir.