chaînes f en Python
Python offre une fonctionnalité puissante appelée cordes f (littéraux de chaîne formatés) pour simplifier le formatage et l'interpolation des chaînes. cordes f est introduit dans Python 3.6, il fournit un moyen concis et intuitif d'intégrer des expressions et des variables directement dans des chaînes. L'idée derrière les f-strings est de simplifier l'interpolation des chaînes.
Comment utiliser les f-strings en Python
Pour créer une f-string, préfixez la chaîne avec la lettre F . La chaîne elle-même peut être formatée de la même manière que vous le feriez avec str.format() . Les chaînes F offrent un moyen concis et pratique d'intégrer des expressions Python dans des littéraux de chaîne pour le formatage.
Imprimer des variables à l'aide d'une f-string en Python
Dans l'exemple ci-dessous, nous avons utilisé la f-string dans une méthode print() pour imprimer une chaîne. Nous utilisons des accolades pour utiliser une valeur variable à l'intérieur des f-strings, nous définissons donc une variable « val » avec « Geeks » et l'utilisons à l'intérieur comme le montre le code ci-dessous. 'val' avec « Geeks » . De même, nous utilisons le 'nom' et le variable à l’intérieur d’une deuxième instruction d’impression.
Python # Python3 program introducing f-string val = 'Geeks' print(f'{val}for{val} is a portal for {val}.') name = 'Tushar' age = 23 print(f'Hello, My name is {name} and I'm {age} years old.') Sortir
techcodeview.com is a portal for Geeks. Hello, My name is Tushar and I'm 23 years old.
Imprimer la date en utilisant une f-string en Python
Dans cet exemple, nous avons imprimé la date du jour en utilisant le dateheure module en Python avec f-string. Pour cela, nous importons d’abord le module datetime, puis nous imprimons la date en utilisant f-sting. À l'intérieur du string 'aujourd'hui' attribué la date actuelle et %B , %d , et %ET représente le mois complet , jour du mois , et année respectivement.
Python # Prints today's date with help # of datetime library import datetime today = datetime.datetime.today() print(f'{today:%B %d, %Y}') Sortir
March 06, 2024
Note: Les chaînes F sont plus rapides que les deux mécanismes de formatage de chaîne les plus couramment utilisés, à savoir le formatage % et str.format().
Guillemets dans f-string en Python
Pour utiliser n'importe quel type de guillemets avec la chaîne f en Python, nous devons nous assurer que les guillemets utilisés dans l'expression ne sont pas les mêmes que les guillemets utilisés avec la chaîne f.
Python print(f''techcodeview.com'') print(f'''Geeks'for'Geeks''') print(f'''Geeks'for'Geeks''')
Sortir
'techcodeview.com' Geeks'for'Geeks Geeks'for'Geeks
Évaluer les expressions avec des f-Strings en Python
Nous pouvons également évaluer des expressions avec des f-strings en Python. Pour ce faire, nous devons écrire l'expression entre les accolades dans la chaîne f et le résultat évalué sera imprimé comme indiqué dans la sortie du code ci-dessous.
Python english = 78 maths = 56 hindi = 85 print(f'Ram got total marks {english + maths + hindi} out of 300') Sortir
Ram got total marks 219 out of 300
Erreurs lors de l'utilisation de f-string en Python
Barres obliques inverses dans la chaîne f en Python
Dans Python f-string, la barre oblique inverse ne peut pas être utilisée directement dans la chaîne de format.
Python f'newline: {ord('
')' Sortir
Traceback (most recent call last): Python Shell, prompt 29, line 1 Syntax Error: f-string expression part cannot include a backslash: , line 1, pos 0
Cependant, nous pouvons mettre la barre oblique inverse dans une variable comme solution de contournement :
Python newline = ord('
') print(f'newline: {newline}') Sortir
newline: 10
Commentaires en ligne dans f-string en Python
Nous ne pouvons pas utiliser de commentaires dans les expressions de chaîne F. Cela donnera une erreur :
Python f'techcodeview.com is {5*2 + 3 #geeks-5} characters.' Sortir:
Hangup (SIGHUP) File 'Solution.py', line 1 f'techcodeview.com is {5*2 + 3 #geeks-5} characters.' ^ SyntaxError: f-string expression part cannot include '#' Impression d'accolades à l'aide d'une f-string en Python
Si nous voulons afficher des accolades dans la sortie de la chaîne f, nous devons utiliser des accolades doubles dans la chaîne f. Notez que pour chaque paire d'accolades, nous devons taper des accolades doubles comme le montre le code ci-dessous.
Python # Printing single braces print(f'{{Hello, Geek}}') # Printing double braces print(f'{{{{Hello, Geek}}}}') Sortir
{Hello, Geek} {{Hello, Geek}} Impression de la valeur-clé des dictionnaires à l'aide d'une chaîne f en Python
Lorsque nous travaillons avec des dictionnaires, nous devons nous assurer que si nous utilisons des guillemets doubles () avec la chaîne f, nous devons utiliser des guillemets simples (') pour les clés à l'intérieur de la chaîne f en Python et vice-versa. Sinon, cela générera une erreur de syntaxe.
Python Geek = { 'Id': 112, 'Name': 'Harsh'} print(f'Id of {Geek['Name']} is {Geek['Id']}') Sortir
Hangup (SIGHUP) File 'Solution.py', line 4 print(f'Id of {Geek['Name']} is {Geek['Id']}') ^ SyntaxError: invalid syntax Utiliser le même type de guillemets pour la f-string et la clé
Python Geek = { 'Id': 112, 'Name': 'Harsh'} print(f'Id of {Geek['Name']} is {Geek['Id']}') Sortir
Id of Harsh is 112