Sommaire du parcours
1.Premiers pas
2.Textes et saisie
3.Conditions
4.Boucles
5.Listes et dictionnaires
6.Fonctions et projet
Module 2Textes et saisie
Dialoguer avec input()
Posez des questions à l’utilisateur et convertissez ses réponses en nombres.
- 10 min
- 3 étapes
- 2 exercices
Poser une question
La fonction input() affiche une question, attend que l’utilisateur tape sa réponse, puis renvoie cette réponse. On la range généralement dans une variable pour s’en servir ensuite. Lancez l’exemple : quand le programme attend votre réponse, une zone de saisie apparaît dans la console. Tapez votre prénom, puis appuyez sur Entrée.
prenom = input("Comment vous appelez-vous ? ")
print(f"Enchanté, {prenom} !")Cliquez sur « Exécuter » pour voir le résultat ici.
input() renvoie toujours du texte
Même si l’utilisateur tape 15, input() renvoie le texte "15", et non le nombre 15. Or additionner deux textes les colle l’un à l’autre : "15" + "1" donne "151" ! Pour calculer avec une réponse, il faut d’abord la convertir en nombre avec int() pour un nombre entier, ou float() pour un nombre à virgule.
reponse = input("Quel âge avez-vous ? ")
print(type(reponse))
age = int(reponse)
print(f"L’an prochain, vous aurez {age + 1} ans.")Cliquez sur « Exécuter » pour voir le résultat ici.
Convertir dans les deux sens
int() et float() transforment un texte en nombre, et str() transforme un nombre en texte. str() permet par exemple de coller un nombre à un texte avec +, même si les f-strings restent plus simples. Si le texte ne contient pas un nombre valide, comme "douze", int() provoque une erreur ValueError. Essayez pour voir l’explication qui s’affiche.
texte = "42"
nombre = int(texte)
print(nombre + 8)
prix = float("2.5")
print(prix * 2)
score = 120
print("Votre score : " + str(score))Cliquez sur « Exécuter » pour voir le résultat ici.
À vous de jouer
Exercices
0 sur 2 réussi
Exercice 1
Convertir avant de calculer
La variable texte contient 25 sous forme de texte. Convertissez-la en nombre entier dans la variable nombre, pour que le programme affiche le double de ce nombre.
Résultat attendu
50
texte = "25"
# Convertissez texte en nombre entier
nombre = texte
print(nombre * 2)Écrivez votre code, puis cliquez sur « Vérifier ma réponse ».
Exercice 2
Le ticket de caisse
Les variables quantite et prix contiennent des textes, comme s’ils venaient de input(). Convertissez quantite en nombre entier et prix en nombre à virgule, puis calculez le total.
Résultat attendu
Total : 4.5 euros
quantite = "3"
prix = "1.5"
# Convertissez puis calculez le total
total = 0
print(f"Total : {total} euros")Écrivez votre code, puis cliquez sur « Vérifier ma réponse ».
Prêt pour la suite ?
Réussissez les exercices ci-dessus, ou marquez la leçon comme terminée quand vous le souhaitez.