logo oujood
🔍

La saisie utilisateur en Python : input()

La fonction input() interrompt le programme et attend que l'utilisateur saisisse une valeur au clavier. Elle retourne toujours une chaîne de caractères, quelle que soit la valeur saisie.

OUJOOD.COM

Utiliser input() en Python 3

En Python 3, la fonction input() affiche un message à l'utilisateur, attend sa saisie, puis retourne ce qu'il a tapé sous forme de chaîne. Le programme s'arrête jusqu'à ce que l'utilisateur appuie sur Entrée.

  📋 Copier le code

# input() affiche le message et attend la saisie
utilisateur = input("Entrez votre nom : ")
print("Bienvenue " + utilisateur)

La valeur retournée est toujours de type str, même si l'utilisateur saisit un nombre. Pour travailler avec des entiers ou des flottants, il faut convertir explicitement.

En Python 2 (non maintenu depuis 2020), la fonction équivalente s'appelait raw_input(). Pour tout nouveau projet, on utilise Python 3 et input().

Convertir la saisie en nombre

Pour récupérer un entier ou un flottant, on entoure input() avec int() ou float(). Si l'utilisateur saisit autre chose qu'un nombre, Python lève une ValueError — d'où l'intérêt de combiner cette conversion avec un bloc try/except.

  📋 Copier le code

try:
    age = int(input("Entrez votre âge : "))
    print("Vous avez", age, "ans")
except ValueError:
    print("Veuillez entrer un nombre valide")

Valider une saisie non vide

Un utilisateur peut appuyer sur Entrée sans rien taper. La méthode strip() supprime les espaces blancs et permet de vérifier si la saisie contient vraiment quelque chose.

  📋 Copier le code

nom = input("Entrez votre nom : ")
if nom.strip():  # True si la saisie n'est pas vide
    print("Bienvenue", nom)
else:
    print("Aucun nom saisi")

Combiner input() et f-strings

Les f-strings rendent l'affichage des valeurs saisies plus lisible. On récupère les deux valeurs, puis on les insère directement dans la chaîne formatée.

  📋 Copier le code

nom = input("Entrez votre nom : ")
age = int(input("Entrez votre âge : "))
print(f"Bonjour {nom}, vous avez {age} ans")

Boucle de saisie avec validation complète

Dans une application réelle, on redemande la saisie tant qu'elle n'est pas valide. La boucle while True tourne indéfiniment jusqu'à ce qu'un break l'interrompe — ce qui se produit dès qu'une valeur correcte est saisie.

  📋 Copier le code

while True:
    try:
        age = int(input("Entrez votre âge (entier positif) : "))
        if age > 0:
            print(f"Parfait ! Vous avez {age} ans.")
            break  # saisie valide : on sort de la boucle
        else:
            print("L'âge doit être un nombre positif.")
    except ValueError:
        print("Ce n'est pas un nombre entier, réessayez.")

Par carabde | Mis à jour le 24 avril 2026