Python - Mise en forme de la sortie

Bienvenue, aspirants programmeurs ! Aujourd'hui, nous plongeons dans le monde passionnant de la mise en forme de la sortie en Python. En tant que votre enseignant de informatique de quartier, je suis là pour vous guider à travers ce voyage, étape par étape. Ne vous inquiétez pas si vous êtes nouveau dans la programmation – nous commencerons par les bases et nous travaillerons notre chemin vers le haut. Alors, prenez votre boisson préférée, mettez-vous à l'aise, et partons ensemble dans cette aventure Python !

Python - Output Formatting

Mise en forme de la sortie en Python

Avant de plonger dans les détails, parlons de pourquoi la mise en forme de la sortie est importante. Imaginez que vous faites un gâteau – bien sûr, les ingrédients comptent, mais la manière dont vous le présentez fait toute la différence ! C'est la même chose pour la programmation. Votre code pourrait fonctionner parfaitement, mais présenter la sortie dans un format clair et lisible peut rendre votre programme beaucoup plus convivial et professionnel.

Fonction d'impression de base

Commençons par la manière la plus simple d'afficher une sortie en Python – la fonction print().

print("Bonjour, le monde !")

Ce qui donnera en sortie : Bonjour, le monde !

Simple, non ? Mais que faire si nous voulons nous amuser un peu ? C'est là que entre la mise en forme !

Utilisation de l'opérateur de modulo de chaîne (%)

L'opérateur de modulo de chaîne % est l'une des méthodes de formatage les plus anciennes en Python. C'est comme la voiture ancienne du formatage – un peu vieillotte, mais elle fait encore le travail.

nom = "Alice"
âge = 25
print("Mon nom est %s et j'ai %d ans." % (nom, âge))

Sortie : Mon nom est Alice et j'ai 25 ans.

Ici, %s est un espace réservé pour les chaînes de caractères, et %d pour les entiers. C'est comme laisser des espaces blancs dans une phrase et les remplir plus tard !

Utilisation de la méthode format()

La méthode format() est comme le frère cadet plus cool de l'opérateur de modulo. Elle est plus flexible et plus facile à lire.

nom = "Bob"
âge = 30
print("Mon nom est {} et j'ai {} ans.".format(nom, âge))

Sortie : Mon nom est Bob et j'ai 30 ans.

Vous pouvez également utiliser des placeholders numérotés :

print("Le {0} dans le {1} pèse {2} kilos.".format("chat", "chapeau", 5))

Sortie : Le chat dans le chapeau pèse 5 kilos.

Utilisation des F-strings

Les F-strings, introduites en Python 3.6, sont les nouveaux venus du quartier. Ils sont rapides, lisibles et mes préférés personnels !

nom = "Charlie"
âge = 35
print(f"Mon nom est {nom} et j'ai {âge} ans.")

Sortie : Mon nom est Charlie et j'ai 35 ans.

Les F-strings vous permettent de mettre des expressions directement à l'intérieur des accolades :

x = 10
y = 20
print(f"La somme de {x} et {y} est {x + y}")

Sortie : La somme de 10 et 20 est 30

Règle de conversion de format en Python

Parfois, vous devez convertir des types de données pour le formatage. Python est là pour vous !

pi = 3.14159
print(f"Pi à deux décimales : {pi:.2f}")

Sortie : Pi à deux décimales : 3.14

Voici un tableau pratique des spécificateurs de format courants :

Spécificateur Description
d Entier
f Flottant
s Chaîne
x Hexadécimal
o Octal
e Scientifique

Chaînes de modèle

Les chaînes de modèle sont comme les mad libs pour Python. Elles sont géniales lorsque vous travaillez avec des entrées utilisateur ou que vous souhaitez séparer le formatage du code.

from string import Template

t = Template("$nom est $âge ans")
résultat = t.substitute(nom="David", âge=40)
print(résultat)

Sortie : David est 40 ans

Le module textwrap

Le module textwrap est votre meilleur ami lorsqu'il s'agit de chaînes longues. Il vous aide à envelopper et à formater le texte pour le rendre plus lisible.

import textwrap

longue_chaîne = "Ceci est une très longue chaîne que nous voulons envelopper pour la rendre plus lisible à l'écran ou en impression."
enveloppé = textwrap.wrap(longue_chaîne, width=30)

for ligne in enveloppé:
print(ligne)

Sortie :

Ceci est une très longue chaîne
que nous voulons envelopper pour
la rendre plus lisible à l'écran
ou en impression.

Fonction shorten()

Parfois, vous avez juste besoin de tronquer une chaîne. La fonction shorten() est parfaite pour cela :

import textwrap

longue_chaîne = "Ceci est une très longue chaîne que nous voulons raccourcir."
raccourci = textwrap.shorten(longue_chaîne, width=25, placeholder="...")
print(raccourci)

Sortie : Ceci est une très long...

Le module pprint

Enfin, parlons du module pprint (pretty print). Il est génial pour imprimer des structures de données complexes dans un format plus lisible.

from pprint import pprint

données_complexes = {'nom': 'Eve', 'âge': 45, 'loisirs': ['lecture', 'jeux vidéo', 'randonnée'], 'famille': {'conjoint': 'Adam', 'enfants': ['Cain', 'Abel']}}

print("Impression normale :")
print(données_complexes)

print("\nImpression jolie :")
pprint(données_complexes)

Sortie :

Impression normale :
{'nom': 'Eve', 'âge': 45, 'loisirs': ['lecture', 'jeux vidéo', 'randonnée'], 'famille': {'conjoint': 'Adam', 'enfants': ['Cain', 'Abel']}}

Impression jolie :
{'âge': 45,
'famille': {'conjoint': 'Adam', 'enfants': ['Cain', 'Abel']},
'loisirs': ['lecture', 'jeux vidéo', 'randonnée'],
'nom': 'Eve'}

Et voilà, les amis ! Nous avons parcouru la terre de la mise en forme de la sortie en Python, de la fonction d'impression de base à l'élégant module pprint. Rappelez-vous, une bonne mise en forme est comme de bonnes manières – elle rend tout plus agréable et plus facile à comprendre.

Continuer votre aventure Python, expérimentez avec ces techniques de formatage. Bientôt, vous créerez des sorties qui ne seront pas seulement fonctionnelles, mais carrément belles. Bon codage, et que vos sorties soient toujours parfaitement formatées !

Credits: Image by storyset