Formatage de chaîne en Python
Python utilise le style du langage C pour créer de nouvelles chaînes formatées. L’opérateur « % » est utilisé pour formater un ensemble de variables contenues dans un « tuple, ainsi qu’une chaîne qui contient du texte normal avec des symboles spéciaux comme « %s » et « %d ».
Disons que vous avez une variable appelée « name » et que vous souhaitez ensuite afficher un message.
name = "Thomas" print("Hello %s, Welcome to WayToLearnX!" % name)
Sortie:
Hello Thomas, Welcome to WayToLearnX!
Si vous avez deux ou plusieurs arguments, utilisez un tuple (parenthèses):
name = "Thomas" age = 18 print("My name is %s, I am %d years old." % (name, age))
Sortie:
My name is Thomas, I am 18 years old.
Tout objet qui n’est pas une chaîne peut également être formaté à l’aide de l’opérateur %s. Par exemple:
dict = {1:"A", 2:"B", 3:"C"} print("My dictionnary: %s" % dict)
Sortie:
My dictionnary: {1: 'A', 2: 'B', 3: 'C'}
Voici quelques opérateurs de base que vous devez connaître:
- %s – Chaîne (ou tout objet avec une représentation sous forme de chaîne)
- %d – Entiers
- %f – Nombres à virgule flottante
Vous pouvez aussi formater une chaîne en utilisant la méthode format().
La méthode format()
La méthode format() vous permet de formater des parties sélectionnées d’une chaîne.
Parfois, il y a des parties d’un texte que vous ne contrôlez pas, peut-être, elles proviennent d’une base de données ou une entrée d’un utilisateur.
Pour contrôler ces valeurs, ajoutez des accolades {} dans le texte et exécutez les valeurs via la méthode format():
Exemple:
name = "Thomas" str = "Hello {}, Welcome to WayToLearnX!" print(str.format(name))
Sortie:
Hello Thomas, Welcome to WayToLearnX!
Si vous souhaitez utiliser plus de valeurs, ajoutez simplement plus de valeurs à la méthode format():
Exemple:
name = "Thomas" age = 18 str = "My name is {}, I am {} years old." print(str.format(name, age))
Sortie:
My name is Thomas, I am 18 years old.
Numéros d’index
Vous pouvez utiliser des numéros d’index (un nombre entre accolades {0}) pour vous assurer que les valeurs sont placées dans les espaces appropriés.
Exemple:
num = 4 rue = 63 quartier = 90 adresse = "N°{0}, Rue {1} Quartier {2} Paris." print(adresse.format(num, rue, quartier))
Sortie:
N°4, Rue 63 Quartier 90 Paris.
Ensuite, si vous souhaitez faire référence à la même valeur plusieurs fois, utilisez le même numéro d’index.
Exemple:
heure = 9 adresse = "Du {0}h du matin, à {0}h du soir." print(adresse.format(heure))
Sortie:
Du 9h du matin, à 9h du soir.