1. La méthode String format() en Python
En Python, il existe plusieurs méthodes pour formater des chaînes de caractères, , notamment format(), %, et les f-strings. Les f-strings sont devenus très populaires en raison de leur lisibilité et de leur flexibilité. L'une de ces méthodes la plus utilisée est la fonction format(), qui permet de réaliser des opérations de formatage en remplaçant des délimiteurs {} par des valeurs. Ces délimiteurs peuvent inclure des indices ou des arguments positionnels. Vous pouvez également personnaliser davantage le formatage en utilisant des modificateurs de format pour des résultats plus précis.
Voici un exemple simple d'utilisation de la méthode format() avec des délimiteurs de position :
1 2 3 4 5 6 7 |
nom = "Albert" job = "enseignant" s = "Je m'appelle {} je suis {} de mathématiques".format(nom, job) print(s) # Ce code affiche: # Je m'appelle Albert je suis enseignant de mathématiques |
Remarque
Notez bien que l'ordre des valeurs peut être modifié en utilisant des indices, comme dans l'exemple suivant :
1 2 3 4 5 |
nom = "Albert" job = "enseignant" s = "Je m'appelle {1} je suis {0} de mathématiques".format(job, nom) print(s) #output: Je m'appelle Albert je suis enseignant de mathématiques |
2. La méthode format() avec conversion des types de données
La méthode format() peut également être utilisée pour convertir le type de données d'une variable en un autre type. Pour ce faire, il suffit de spécifier le type souhaité à l'intérieur des accolades, comme illustré dans l'exemple suivant :
Exemple
1 2 3 4 5 6 7 8 9 10 11 12 13 |
var = 26 print("La valeur décimale est : {0:d}".format(var)) print("La valeur hexadécimale est : {0:x}".format(var)) print("La valeur octale est : {0:o}".format(var)) print("La valeur binaire est : {0:b}".format(var)) """ output : La valeur décimale est : 26 La valeur hexadécimale est : 1a La valeur octale est : 32 La valeur binaire est : 11010 """ |
3. Formatage à l'aide du symbole %
En plus de la méthode format(), Python offre une autre méthode de formatage en utilisant le symbole '%'. Le principe est similaire à celui de la méthode format(). Voici un exemple d'utilisation du symbole % pour le formatage de chaînes :
1 2 3 4 5 6 7 |
nom = "Albert" job = "enseignant" "Je m'appelle %s je suis %s de mathématiques" % (nom, job) """ output: Je m'appelle Albert je suis enseignant de mathématiques """ |
Remarque
Notez bien que '%s' est utilisé pour convertir la variable en une chaîne de caractères. Il existe d'autres symboles pour différents types de variables, par exemple '%d' pour les entiers, '%f' pour les décimaux, '%x' pour les hexadécimaux, etc. Voici un exemple combinant différents types de variables :
1 2 3 4 5 6 7 8 9 |
nom = "Albert" job = "enseignant" age = 30 s = "Je m'appelle %s je suis un %s de mathématiques. J'ai %f ans" % (nom, job, age) print(s) """ output : Je m'appelle Albert je suis enseignant de mathématiques. J'ai 30.000000 ans """ |
Ainsi, Python offre plusieurs méthodes flexibles pour formater des chaînes de caractères en fonction de vos besoins.
-
Oreillette Bluetooth Sans Fil - Écouteurs Bluetooth 5.1 Contrôle Tactile, Écran LED
€ 8,00 Acheter le produit -
Obtenez Microsoft 365 Famille avec Office 365 apps - 15 Mois + NORTON 360 Deluxe - PC/MAC, tablette et smartphone
€ 57,00 Acheter le produit -
Python 3 par la pratique avec exercices corrigés
€ 37,00 Acheter le livre -
Apprendre rapidement à programmer en Python
€ 44,00 Acheter le livre
4. Formatage de chaînes de caractères f-strings (f-strings)
À partir de Python 3.6, une autre méthode de formatage de chaînes de caractères est devenue populaire, appelée les f-strings. Les f-strings sont des chaînes de caractères formatées en ajoutant le préfixe 'f' devant la chaîne et en utilisant des expressions Python entre des accolades {} pour incorporer des valeurs dans la chaîne. Les f-strings offrent une syntaxe plus concise et plus lisible pour le formatage de chaînes de caractères.
Voici un exemple d'utilisation des f-strings :
Exemple
1 2 3 4 5 6 7 8 9 |
nom = "Albert" job = "enseignant" age = 30 s = f"Je m'appelle {nom} je suis un {job} de mathématiques. J'ai {age} ans" print(s) """ Cela affiche le même résultat que précédemment : Je m'appelle Albert je suis enseignant de mathématiques. J'ai 30 ans """ |
Les f-strings sont particulièrement utiles car ils permettent d'inclure directement des expressions Python complexes à l'intérieur des accolades pour un formatage plus dynamique.
5. Formatage numérique avancé
Pour un formatage numérique plus avancé, vous pouvez spécifier des options de mise en forme telles que la largeur du champ, le nombre de décimales, l'alignement, etc. en utilisant des modificateurs de format.
Par exemple, vous pouvez formater un nombre à virgule flottante avec une précision de deux décimales et l'aligner à droite dans un champ de largeur fixe de 10 caractères :
1 2 3 4 5 6 7 8 9 10 |
pi = 3.141592653589793 formatted_pi = f"Pi = {pi:10.2f}" print(formatted_pi) """ output: Pi = 3.14 Ainsi, les modificateurs de format offrent un contrôle précis sur la façon dont les nombres et les chaînes sont affichés. """ |
6. Quiz
a) %
b) format()
c) f-strings
a) "Mon nom est {}.".format(nom)
b) "Mon nom est {nom}."
c) "Mon nom est {0}.".format(nom)
a) %s
b) %d
c) %f
a) f"{x:05}"
b) f"{x:5}"
c) f"{x:0.5}"
a) f-strings
b) %
c) format()
a) f"{pi:.3}"
b) f"{pi:.3f}"
c) f"{pi:3}"
a) %
b) format()
c) f-strings
C
a) "Je suis {0} de mathématiques. Mon nom est {1}.".format(job, nom)
b) "Je suis {1} de mathématiques. Mon nom est {0}.".format(nom, job)
c) "Je suis {} de mathématiques. Mon nom est {}.".format(job, nom)
a) "La valeur est : 42"
b) "La valeur est : 42.57"
c) "La valeur est : 42.5678"
a) f"{prenom:<15}"
b) f"{prenom:>15}"
c) f"{prenom:^15}"
c) f-strings
a) "Mon nom est {}.".format(nom)
a) %s
a) f"{x:05}"
b) %
b) f"{pi:.3f}"
b) format()
b) "Je suis {1} de mathématiques. Mon nom est {0}.".format(nom, job)
b) "La valeur est : 42.57"
a) f"{prenom:<15}"
Younes Derfoufi
CRMEF OUJDA