Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Industrial programming >> Python

Maîtriser les chaînes format() en Python avec exemples clairs

Qu'est-ce que Python String format() ?

Python String format() est une fonction utilisée pour remplacer, substituer ou convertir la chaîne avec des placeholders par des valeurs valides dans la chaîne finale. C'est une fonction intégrée de la classe string Python, qui retourne la chaîne formatée en sortie. Les placeholders à l'intérieur de la chaîne sont définis entre accolades.

Par exemple, « Bienvenue sur Guru99 {} ».format('valeur ici').

Dans ce tutoriel, vous apprendrez :

Syntaxe de la fonction format() en Python

chaine_modele.format(val1, val2...)

Paramètres

val1, val2 … : Les valeurs qui doivent remplacer dans la chaîne modèle donnée qui a des placeholders sous forme d'accolades {}. Les placeholders peuvent être une chaîne, paire clé/valeur, entiers, nombres à virgule flottante, caractères, etc.

Valeur de retour :

Elle retournera la chaîne finale, avec des valeurs valides remplacées à la place des placeholders donnés entre accolades.

Placeholders

Les placeholders dans la chaîne modèle sont représentés en utilisant des accolades, ex. {}. Le placeholder peut être vide {}, ou avoir une variable ex. {name}, ou avoir un index numérique ex. {0}, {1} etc.

Comment string format() fonctionne ?

La méthode Python String format() scanne la chaîne originale pour les placeholders. Les placeholders peuvent être des accolades vides ({}), des arguments positionnels c'est-à-dire que la chaîne peut avoir des placeholders avec index 0, 1 ex. {0}, {1} etc.

Pour les arguments nommés, le nom de variable sera présent à l'intérieur des accolades ex. {name}, {age}. Dans le cas d'accolades vides, les valeurs du format seront remplacées à l'intérieur des accolades en séquence.

La première valeur sera remplacée avec la première accolade vide, suivie de la suivante. Pour les arguments positionnels, l'index commence à 0 et ainsi de suite. Les valeurs seront disponibles dans format séparées par des virgules, et la 0ième valeur pointera vers la première valeur à l'intérieur de format et ainsi de suite.

Pour les arguments nommés, c'est-à-dire quand vous utilisez une variable dans vos placeholders, vous pouvez avoir l'ordre des valeurs dans le format comme vous en avez besoin.

L'ordre n'importe pas ici car les valeurs seront remplacées basées sur le nom de variable présent dans le format(). Voici quelques exemples de comment utiliser les placeholders dans une chaîne comme vides, positionnels, et en utilisant mots-clés ou variables.

Exemple : Placeholder vide remplacé par une valeur chaîne

Dans l'exemple ci-dessous, la chaîne a des accolades vides({}). La valeur donnée au format sera remplacée à l'intérieur des accolades({}).

La valeur que nous voulons remplacer est une chaîne.

Exemple :

En utilisant le formatage de chaîne en Python, nous voulons que les accolades ({}) soient remplacées par une valeur chaîne. La valeur est donnée à format("Guru99"). À l'exécution, les accolades {} sont remplacées par Guru99, et vous obtiendrez la chaîne finale comme Bienvenue sur Guru99 tutoriels.

print ("Bienvenue sur {} tutoriels".format("Guru99"))

Sortie :

Bienvenue sur Guru99 tutoriels

Exemple : Placeholder vide remplacé par une valeur numérique

Dans l'exemple ci-dessous, nous voulons que la valeur numérique soit remplacée à l'intérieur de la chaîne originale. Les accolades({}) sont ajoutées à l'endroit où vous avez besoin de la valeur numérique. Quand il s'exécute, les accolades vides ({}) sont remplacées par la valeur numérique.

Exemple :

Vous pouvez aussi utiliser format() pour insérer des nombres dans votre chaîne. L'exemple montrera comment remplacer le placeholder vide {} par le nombre 99 présent dans format().

print ("Bienvenue sur Guru{} Tutoriels".format("99"))

Sortie :

Bienvenue sur Guru99 Tutoriels

Exemple : Utilisation de variables ou arguments nommés dans le Placeholder

Il est aussi possible d'utiliser des variables à l'intérieur des accolades, comme montré dans l'exemple ci-dessous. Les variables sont définies dans format(). Donc, quand il s'exécute, la valeur assignée à la variable est remplacée dans la chaîne originale.

Exemple :

Vous pouvez utiliser des variables dans les accolades par exemple {name} {num}. Les valeurs pour les variables name et num sont disponibles dans format c'est-à-dire format(name="Guru", num="99"). Les valeurs données à name et num seront remplacées dans {name} et {num}.

print ("Bienvenue sur {name}{num} Tutoriels".format(name="Guru", num="99"))

Sortie :

Bienvenue sur Guru99 Tutoriels

Exemple : Utilisation d'index ou arguments positionnels dans le Placeholder

Les valeurs peuvent être remplacées en utilisant des index comme 0, 1, 2 à l'intérieur des placeholders. La valeur sera prise dans l'ordre depuis format(), comme montré dans l'exemple ci-dessous.

Exemple :

print ("Bienvenue sur {0}{1} Tutoriels".format("Guru","99"))

Sortie :

Bienvenue sur Guru99 Tutoriels

Exemple : Utilisation de plusieurs placeholders dans une chaîne

Dans cet exemple, nous allons utiliser plusieurs placeholders vides.

Exemple :

La chaîne utilisée dans l'exemple a plusieurs placeholders vides et chaque placeholder se référera à une valeur dans format(). La première valeur sera remplacée pour le premier placeholder et ainsi de suite.

print ("{} est {} nouveau type d'{} expérience!".format("Guru99", "totalement","apprentissage"))

Sortie :

Guru99 est totalement nouveau type d'apprentissage expérience!

Formatage à l'intérieur des Placeholders

Vous avez vu qu'il est possible d'avoir un Placeholder comme vide, avec une variable ou un index. Il est aussi possible d'appliquer du Formatage de Chaîne Python à l'intérieur du Placeholder.

Voici la liste des formats

Format Description Exemple
:d Donne la sortie en format décimal quand utilisé dans le placeholder print("La valeur binaire en décimal est : {:d}".format(0b0011))
Sortie :
La valeur binaire en décimal est : 3
:b Donne la sortie en format binaire quand utilisé dans le placeholder print("La valeur binaire est : {:b}".format(500))
Sortie :
La valeur binaire est : 111110100
:e Donne la sortie en format scientifique quand utilisé dans le placeholder, l'exposant e en minuscules. print("La valeur scientifique est : {:e}".format(40))
Sortie :
La valeur en format scientifique est : 4.000000e+01
:E Donne la sortie en format scientifique, exposant E en majuscules print("La valeur scientifique est : {:E}".format(40))
Sortie :
La valeur scientifique est : 4.000000E+01
:f Sortie en format nombre à virgule fixe. Par défaut, 6 décimales. Pour 2 décimales, utilisez .2f print("La valeur est : {:f}".format(40))
Sortie :
La valeur est : 40.000000
Exemple : Affichage jusqu'à 2 décimales.
print("La valeur est : {:.2f}".format(40))
Sortie :
La valeur est : 40.00
:o Sortie en format octal print("La valeur est : {:o}".format(500))
Sortie :
La valeur est : 764
:x Sortie en format hexadécimal minuscules print("La valeur est : {:x}".format(500))
Sortie :
La valeur est : 1f4
:X Sortie en format hexadécimal majuscules print("La valeur est : {:X}".format(500))
Sortie :
La valeur est : 1F4
:n Sortie en format nombre print("La valeur est : {:n}".format(500.00))
Sortie :
La valeur est : 500
:% Sortie en format pourcentage. 6 décimales par défaut. Pour aucune décimale, utilisez :.0% print("La valeur est : {:%}".format(0.80))
Sortie :
La valeur est : 80.000000%
Exemple pour ignorer les décimales avec {:.0%}.
print("La valeur est : {:.0%}".format(0.80))
Sortie :
La valeur est : 80%
:_ Souligne comme séparateur de milliers (Python 3.6+) print("La valeur est {:_}".format(1000000))
Sortie :
La valeur est : 1_000_000
:, Virgule comme séparateur de milliers print("La valeur est : {:,}".format(1000000))
Sortie :
La valeur est : 1,000,000
: Espace avant nombres positifs Exemple pour ajouter espace ou padding avant le nombre. Le nombre 5 indique le nombre d'espaces.
print("La valeur est : {:5}".format(40))
Sortie :
La valeur est :    40
:- Signe moins avant nombres négatifs Exemple pour obtenir sortie avec signe moins (-) avant nombre usando {:-}.
print("La valeur est : {:-}".format(-40))
Sortie :
La valeur est : -40
:+ Signe plus pour indiquer nombre positif Exemple pour obtenir sortie avec signe plus (+) avant nombre usando {:+}.
print("La valeur est : {:+}".format(40))
Sortie :
La valeur est : +40
:= Place le signe +/- à gauche du signe égal Exemple pour obtenir sortie avec signe +/- avant égal usando {:=}.
print("La valeur est {:=}".format(-40))
Sortie :
La valeur est -40
:^ Centre le résultat final Exemple pour utiliser {:^} pour centrer le texte. Le nombre 10 ajoute 10 espaces pour montrer le centrage.
print("La valeur {:^10} est valeur positive".format(40))
Sortie :
La valeur     40     est valeur positive
:> Aligne à droite le résultat final L'espace de 10 est ajouté usando (:>10), et la valeur remplacée est alignée à droite.
print("La valeur {:>10} est valeur positive".format(40))
Sortie :
La valeur         40 est valeur positive
:< Aligne à gauche le résultat final L'espace de 10 est ajouté usando (:<10), et la valeur remplacée est alignée à gauche.
print("La valeur {:<10} est valeur positive".format(40))
Sortie :
La valeur 40         est valeur positive

Utilisation de classe avec format()

Dans cet exemple, nous créons une classe et utilisons l'objet de la classe dans la méthode .format Python. Les placeholders référenceront les propriétés ou membres de la classe via l'objet de la classe.

Exemple :

La classe est appelée dans le format(c=MaClasse()). L'objet c aura la référence aux propriétés et méthodes dans la classe MaClasse().

class MaClasse:
    msg1="Guru"
    msg2="Tutoriels"
print("Bienvenue sur {c.msg1}99 {c.msg2}!".format(c=MaClasse()))

Sortie :

Bienvenue sur Guru99 Tutoriels!

Utilisation de dictionnaire avec format()

Il est aussi possible d'utiliser un dictionnaire dans format() comme montré dans l'exemple ci-dessous :

mon_dict = {'msg1': "Bienvenue", 'msg2': 'Guru99'}
print("{m[msg1]} à {m[msg2]} Tutoriels!".format(m=mon_dict))

Sortie :

Bienvenue à Guru99 Tutoriels!

Remplissage des substitutions de variables

En utilisant la méthode string.format(), vous pouvez ajouter du padding, espace en utilisant des placeholders dans votre chaîne.

Exemple :

Dans l'exemple ci-dessous, nous ajoutons de l'espace dans le Placeholder en utilisant format(). Pour ajouter de l'espace, vous devez spécifier le nombre d'espaces dans les accolades après les deux-points(:). Donc le Placeholder ressemblera à {:5}.

print("J'ai {:5} chiens et {:5} chat".format(2,1))

Sortie :

J'ai     2 chiens et     1 chat

Vous pouvez aussi donner l'index dans le placeholder par exemple : {0:5} où 0 référera la première valeur dans format.

print("J'ai {0:5} chiens et {1:5} chat".format(2,1))

Sortie :

J'ai     2 chiens et     1 chat

Résumé


Python

  1. Maîtriser la méthode strip() de Python : Guide complet et exemples pratiques
  2. Maîtriser str.count() de Python : Compter caractères et sous-chaînes avec exemples
  3. Maîtriser la méthode String.find() de Python : Syntaxe, Exemples et Alternatives
  4. Maîtriser les fonctions lambda Python : exemples pratiques et bonnes pratiques
  5. Fonction Python round() expliquée avec exemples pratiques
  6. Maîtriser la fonction Python map() : syntaxe, exemples et bonnes pratiques
  7. Python timeit() : mesurer le temps d'exécution avec exemples pratiques
  8. Python Counter dans collections : comptage efficace, mise à jour et opérations arithmétiques
  9. Comprendre type() et isinstance() en Python : exemples pratiques