Affichage et Saisie en Python

@joekakone

Joseph Konka @joekakone

03/03/2026 · 8 min

Maîtrisez les entrées et sorties en Python : la fonction print, ses paramètres sep et end, le formatage moderne avec les f-strings, et la saisie utilisateur sécurisée avec input et conversion de types.

Affichage et Saisie en langage Python#

L'interaction entre un programme et son utilisateur repose sur deux opérations fondamentales : 1. L'affichage (Sortie) : transmettre des résultats, messages ou visualisations vers le terminal (print). 2. La saisie (Entrée) : collecter des informations tapées au clavier par l'utilisateur (input).


1. La fonction d'affichage : print()#

La fonction native print() envoie un ou plusieurs objets vers la sortie standard (sys.stdout), séparés par un espace et suivis par défaut d'un saut de ligne (\n).

Affichage multiple et paramètres sep et end#

print() propose deux arguments nommés particulièrement utiles : - sep : définit la chaîne insérée entre chaque argument (par défaut ' '). - end : définit le caractère terminal imprimé en fin de ligne (par défaut '\n').

# 1. Utilisation basique
print("Bienvenue", "sur", "AlgoJungle")  # Bienvenue sur AlgoJungle

# 2. Séparateur personnalisé avec sep
print("2026", "03", "03", sep="-")        # 2026-03-03
print("admin", "algojungle.com", sep="@")  # admin@algojungle.com

# 3. Empêcher le saut de ligne avec end
print("Chargement en cours...", end=" ")
print("[OK]")  # S'affiche sur la même ligne : Chargement en cours... [OK]

2. Le formatage moderne avec les f-strings (PEP 498)#

Introduites avec Python 3.6, les f-strings (Formatted String Literals) représentent la manière la plus lisible, concise et performante de formater du texte en injectant des variables ou expressions directement entre accolades {}.

nom = "Koffi"
score = 87.456

# Syntaxe d'une f-string : précéder la chaîne de la lettre 'f' ou 'F'
message = f"Candidat : {nom} | Score : {score:.2f}%"
print(message)
# Affiche : Candidat : Koffi | Score : 87.46%

Spécificateurs de format courants dans les f-strings#

Spécificateur Effet Exemple Résultat
:.2f Arrondit à 2 décimales f"{3.14159:.2f}" '3.14'
:>10 Aligne à droite sur 10 caractères f"{'Total':>10}" ' Total'
:<10 Aligne à gauche sur 10 caractères f"{'Total':<10}" 'Total '
:04d Complète avec des zéros sur 4 chiffres f"{7:04d}" '0007'
:.1% Multiplie par 100 et affiche en % f"{0.185:.1%}" '18.5%'
:, Séparateur de milliers avec virgule f"{1000000:,}" '1,000,000'

3. La saisie utilisateur : input()#

La fonction input(invite) suspend l'exécution du programme, affiche le message d'invite et attend que l'utilisateur valide sa frappe avec la touche Entrée.

[!IMPORTANT] Règle absolue : La fonction input() renvoie TOUJOURS une chaîne de caractères (str), même si l'utilisateur saisit un nombre !

annee_texte = input("Entrez votre annee de naissance : ")
print(type(annee_texte))  # <class 'str'>

Conversion explicite de type (Casting)#

Pour effectuer des calculs sur une saisie, vous devez impérativement convertir la chaîne en entier (int) ou en nombre décimal (float) :

# Saisie et conversion immédiate
age = int(input("Quel est votre age ? "))
taille = float(input("Quelle est votre taille en metres (ex: 1.75) ? "))

print(f"L'annee prochaine, vous aurez {age + 1} ans.")
print(f"Votre taille est de {taille:.2f} m.")

[!WARNING] Si l'utilisateur saisit du texte non numérique (ex: "vingt" au lieu de 20), la conversion int("vingt") lève immédiatement une exception ValueError. Nous verrons dans le chapitre dédié aux exceptions comment sécuriser cette étape.


4. Mise en pratique : Générateur de devis commercial#

Concevons un script interactif qui invite l'utilisateur à saisir les paramètres d'une commande et affiche un récapitulatif comptable aligné :

print("=== APPLICATION DE FACTURATION ALGOJUNGLE ===")

# Saisies utilisateurs
article = input("Designation du produit : ")
prix_unitaire_ht = float(input("Prix unitaire HT (EUR) : "))
quantite = int(input("Quantite commandee : "))
taux_tva = 0.20  # TVA à 20%

# Calculs
total_ht = prix_unitaire_ht * quantite
montant_tva = total_ht * taux_tva
total_ttc = total_ht + montant_tva

# Affichage du devis formaté
print("\n" + "=" * 45)
print(f"{'RECU DE VENTE':^45}")
print("=" * 45)
print(f"Article        : {article}")
print(f"Prix unitaire  : {prix_unitaire_ht:>8.2f} EUR")
print(f"Quantite       : {quantite:>8d}")
print("-" * 45)
print(f"Total Brut HT  : {total_ht:>8.2f} EUR")
print(f"TVA (20.0%)    : {montant_tva:>8.2f} EUR")
print("=" * 45)
print(f"NET A PAYER TTC: {total_ttc:>8.2f} EUR")
print("=" * 45)

5. Défi d'application#

Écrivez un programme nommé calculateur_imc.py qui demande à l'utilisateur son nom, son poids en kilogrammes (ex: 72.5) et sa taille en mètres (ex: 1.78). Le programme calcule l'Indice de Masse Corporelle selon la formule : $\(\text{IMC} = \frac{\text{poids}}{\text{taille}^2}\)$ et affiche le résultat formaté avec exactement deux décimales.

Commentaires

Inscrivez-vous à une formation complète

Voir le catalogue