Comment utiliser les nouvelles chaînes F dans Python

Comment utiliser les nouvelles chaînes F dans Python

Cet article couvrira un guide sur l'utilisation de la nouvelle syntaxe de mise en forme de chaîne de type «F» ajoutée aux versions récentes de Python. Simplement appelées «cordes f» ou «littéraux de chaîne formatés», ces expressions vous permettent d'utiliser des variables, des fonctions et des instructions Python directement dans le texte d'une chaîne. Ils aident également à garder le code propre, car vous pouvez utiliser des expressions en ligne sans recourir à tout type de substitutions ordonnées qui font généralement partie des autres techniques de formatage des chaînes disponibles dans Python. Les cordes F sont incluses par défaut dans Python 3.6 et nouvelles constructions.

Syntaxe et utilisation de base

Pour utiliser le format de chaîne F, vous devez préfixer n'importe quelle chaîne avec le caractère «f» ou «f», juste avant le symbole de mise de démarrage. Voici un exemple:

text1 = f "Ceci est une chaîne."
text2 = f "Ceci est une autre chaîne."
Imprimer (Text1)
Imprimer (Text2)

Comme vous pouvez le voir, les deux chaînes sont préfixées par des caractères «f» ou «f». Vous pouvez également utiliser des cordes F avant les triples citations. Les citations triples peuvent être utilisées pour représenter les chaînes «telles quelles» et vous n'avez pas besoin d'échapper aux caractères dans une chaîne enveloppée dans des citations triples. Après avoir exécuté cet exemple de code, vous devriez obtenir la sortie suivante:

C'est une chaîne.
Ceci est une autre chaîne.

L'exemple ci-dessus montre simplement une utilisation simple des cordes F où ils sont exactement les mêmes que les objets de type standard standard. La puissance des cordes F provient d'expressions en ligne que vous pouvez envelopper en accolades bouclées. Voici un exemple montrant les variables en ligne utilisées dans les cordes F:

First = "1st"
deuxième = "2nd"
text1 = f "Ceci est la chaîne premier."
text2 = f "Ceci est la chaîne seconde."
Imprimer (Text1)
Imprimer (Text2)

Comme vous pouvez le voir dans l'exemple, les accolades bouclées ont été utilisées deux fois dans les cordes F. Les expressions et variables à l'intérieur des accolades bouclées dans les cordes F sont évaluées par Python, puis elles sont remplacées par les résultats renvoyés par les expressions originales. Après avoir exécuté l'échantillon de code ci-dessus, vous devriez obtenir la sortie suivante:

Ceci est la 1ère chaîne.
C'est la 2ème chaîne.

Si vous utilisez un éditeur de texte avec une syntaxe appropriée en surbrillance pour Python, vous remarquerez que les accolades bouclées sont représentées dans un code couleur différent, indiquant leur différence avec d'autres caractères dans la même chaîne.

Vous pouvez utiliser des accolades bouclées n'importe quel nombre de fois dans les cordes F, comme indiqué dans l'exemple ci-dessous:

First = "1st"
deuxième = "2nd"
text = f "Ceci est la chaîne premier. Ceci est la chaîne seconde."
Imprimer (texte)

Après avoir exécuté l'échantillon de code ci-dessus, vous devriez obtenir la sortie suivante:

Ceci est la 1ère chaîne. C'est la 2ème chaîne.

Vous pouvez avoir utilisé d'autres méthodes de formatage et de substitution de chaînes à Python, principalement la méthode «format» et le symbole spécial «% S». La méthode de format vous oblige à spécifier un index numérique pour les variables qui seront évaluées dans la chaîne. La syntaxe de formatage «% s» vous oblige à fournir des arguments de position par ordre d'apparence. Voici une comparaison des trois types de modèles de formatage:

First = "1st"
deuxième = "2nd"
text = "Ceci est la chaîne 0. Ceci est la chaîne 1.".format (premier, deuxième)
Imprimer (texte)
text = "Ceci est la chaîne% s. C'est la chaîne% s." % (première seconde)
Imprimer (texte)
text = f "Ceci est la chaîne premier. Ceci est la chaîne seconde."
Imprimer (texte)

Comme vous pouvez le voir dans l'échantillon de code, les strings F fournissent une syntaxe beaucoup plus lisible et plus propre en utilisant des variables en ligne. Vous pouvez utiliser des variables et des expressions exactement à l'endroit où vous voulez que la substitution se produise. Pas besoin de fournir des arguments de position ou des index.

Après avoir exécuté l'échantillon de code ci-dessus, vous devriez obtenir la sortie suivante:

Ceci est la 1ère chaîne. C'est la 2ème chaîne.
Ceci est la 1ère chaîne. C'est la 2ème chaîne.
Ceci est la 1ère chaîne. C'est la 2ème chaîne.

Utilisation d'expressions avancées dans les cordes F

Vous pouvez utiliser des opérateurs mathématiques, des fonctions d'appel, des nombres ronds et utiliser essentiellement toute expression arbitraire de python à une doublure dans les accolades bouclées dans les cordes F.

Vous pouvez utiliser le symbole «:» (colon) pour contrôler la largeur de la valeur évaluée. Si la valeur évaluée est de type «int» ou «flottante», il sera arrondis. Vous trouverez ci-dessous un exemple de code:

name = "John"
points = 90.235689
text = f "" "Ceci est un nombre arrondi: points:.3f | Ceci est une chaîne de dix caractères: "nom: 10"."" "
Imprimer (texte)

Le ".Le modificateur de 3f ”arrose le nombre jusqu'à 3 chiffres. Vous pouvez prolonger la largeur d'une chaîne et le remplir d'espaces blancs en fournissant un nombre après le symbole du côlon. Après avoir exécuté l'échantillon de code ci-dessus, vous devriez obtenir la sortie suivante:

Ceci est un numéro arrondi: 90.236 | Ceci est une chaîne de dix caractères: "John".

Vous pouvez en savoir plus sur tous ces modificateurs et symboles en visitant la documentation officielle Python disponible ici.

Vous pouvez également utiliser des instructions avancées à une doublure dans les cordes F. L'exemple ci-dessous montre l'utilisation de la compréhension de la liste dans une chaîne F:

text = f "" "Ceci est une liste: [n pour n dans la plage (10)]" ""
Imprimer (texte)

Dans les accolades bouclées, vous pouvez voir la compréhension de la liste utilisée pour générer une liste à partir d'une plage de 10 nombres. Après avoir exécuté l'échantillon de code ci-dessus, vous devriez obtenir la sortie suivante:

Ceci est une liste: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

Vous pouvez appeler n'importe quelle fonction en orthèses bouclées dans les cordes F. Vous pouvez également fournir les arguments nécessaires lorsque vous les appelez. Voici un exemple de code:

NumberList = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
text = f "" "La longueur de la liste est: len (nombreList)" ""
Imprimer (texte)

L'échantillon de code illustre invoquer la méthode «len» dans des accolades bouclées. Il s'agit d'une méthode Python intégrée, mais vous pouvez également appeler vos propres fonctions personnalisées. Après avoir exécuté l'échantillon de code ci-dessus, vous devriez obtenir la sortie suivante:

La durée de la liste est: 10

Conclusion

F-Strings fournit une meilleure méthodologie de formatage de chaînes surmonter les limitations des autres systèmes de formatage de chaînes disponibles en Python. Ils sont faciles à lire et à utiliser. Ils ne dépendent pas des arguments de position et gardent le code propre, ce qui facilite la débogage des expressions et des déclarations.