La fonction input est fondamentale pour que l'utilisateur puisse interagir avec un programme Python. Elle permet d'interrompre l'exécution du script pour attendre que l'utilisateur saisisse une information au clavier.
variable = input("Entrez votre réponse : ")
-
"Entrez votre réponse : "est une chaîne de caractères affichée à l'écran pour indiquer à l'utilisateur ce qu'il doit saisir -
variablepermet de stocker la saisie de l'utilisateur
Le type de retour
Il faut toujours garder à l'esprit que input retourne dans tous les cas une chaîne de caractères, quel que soit le contenu saisi par l'utilisateur.
age = input("Quel est votre âge ? ") print(type(age)) # Même si l'utilisateur tape 25, le résultat sera <class 'str'>
Alors, comment faire si nous voulons créer une calculatrice interactive ?
# Sans conversion (Erreur logique) nb1 = input("Nombre 1 : ") # l'utilisateur tape 10 nb2 = input("Nombre 2 : ") # l'utilisateur tape 5 print(nb1 + nb2) # Affiche "105" (concaténation) # Avec conversion (Calcul correct) nb1 = int(input("Nombre 1 : ")) nb2 = int(input("Nombre 2 : ")) print(f"Le résultat est : {nb1 + nb2}") # Affiche 15
Prenons un autre exemple avec un nombre décimal :
prix_ht = input("Entrez le prix Hors Taxe : ") prix_ttc = float(prix_ht) * 1.20 print(f"Le prix TTC est de {prix_ttc:.2f} €")
Bonne pratique de sécurité
Si un utilisateur saisit du texte alors que vous attendez un nombre via la conversion int, Python lèvera une exception ValueError. Il est conseillé d'utiliser un bloc try/except pour sécuriser votre code.
try: age = int(input("Votre âge : ")) print(f"Vous avez {age} ans.") except ValueError: print("Erreur : Veuillez entrer un nombre entier valide.")