f-strenge i Python

Python tilbyder en kraftfuld funktion kaldet f-strenge (formaterede strengliteraler) for at forenkle strengformatering og interpolation. f-strenge er introduceret i Python 3.6 giver det en kortfattet og intuitiv måde at indlejre udtryk og variabler direkte i strenge. Ideen bag f-strenge er at gøre strenginterpolation enklere.

Sådan bruger du f-strenge i Python

For at oprette en f-streng skal du foranstille strengen med bogstavet f . Selve strengen kan formateres på nogenlunde samme måde, som du ville med str.format() . F-strenge giver en kortfattet og praktisk måde at indlejre Python-udtryk i strengliteraler til formatering.

Udskriv variabler ved hjælp af f-streng i Python

I eksemplet nedenfor har vi brugt f-strengen inde i en print() metode til at udskrive en streng. Vi bruger krøllede seler til at bruge en variabel værdi inde i f-strenge, så vi definerer en variabel 'val' med 'Nørder' og bruger denne inde som det ses i koden nedenfor 'val' med 'Nørder' . På samme måde bruger vi 'navn' og det variabel inde i en anden udskriftserklæring.

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.') 

Produktion

techcodeview.com is a portal for Geeks. Hello, My name is Tushar and I'm 23 years old. 

Udskriv dato ved hjælp af f-streng i Python

I dette eksempel har vi udskrevet dagens dato ved hjælp af dato tid modul i Python med f-streng. For det første importerer vi datetime-modulet, hvorefter vi udskriver datoen ved hjælp af f-sting. Indvendig f-streng 'i dag' tildelt den aktuelle dato og %B , %d , og %OG repræsenterer hel måned , dag i måneden , og år henholdsvis.

Python
# Prints today's date with help # of datetime library import datetime today = datetime.datetime.today() print(f'{today:%B %d, %Y}') 

Produktion

March 06, 2024 

Bemærk: F-strenge er hurtigere end de to mest almindeligt anvendte strengformateringsmekanismer, som er % formatering og str.format().

Anførselstegn i f-streng i Python

For at bruge en hvilken som helst type anførselstegn med f-strengen i Python skal vi sørge for, at de anførselstegn, der bruges inde i udtrykket, ikke er de samme som anførselstegn brugt med f-strengen.

Python
print(f''techcodeview.com'') print(f'''Geeks'for'Geeks''') print(f'''Geeks'for'Geeks''') 

Produktion

'techcodeview.com' Geeks'for'Geeks Geeks'for'Geeks 

Evaluer udtryk med f-strenge i Python

Vi kan også evaluere udtryk med f-strenge i Python. For at gøre det skal vi skrive udtrykket inde i de krøllede seler i f-streng, og det evaluerede resultat vil blive udskrevet som vist i nedenstående kodes output.

Python
english = 78 maths = 56 hindi = 85 print(f'Ram got total marks {english + maths + hindi} out of 300') 

Produktion

Ram got total marks 219 out of 300 

Fejl under brug af f-streng i Python

Omvendt skråstreg i f-streng i Python

I Python f-streng kan Backslash ikke bruges direkte i formatstreng.

Python
f'newline: {ord('
')' 

Produktion

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 

Vi kan dog sætte skråstreg i en variabel som en løsning:

Python
newline = ord('
') print(f'newline: {newline}') 

Produktion

newline: 10 

Indlejrede kommentarer i f-streng i Python

Vi kan ikke bruge kommentarer inde i F-strengs udtryk. Det vil give en fejl:

Python
f'techcodeview.com is {5*2 + 3 #geeks-5} characters.' 

Produktion:

Hangup (SIGHUP)  File 'Solution.py', line 1  f'techcodeview.com is {5*2 + 3 #geeks-5} characters.'  ^ SyntaxError: f-string expression part cannot include '#' 

Udskrivning af seler ved hjælp af f-streng i Python

Hvis vi vil vise krøllede seler i f-strengens output, så skal vi bruge dobbelt krøllede klammeparenteser i f-strengen. Bemærk, at for hvert enkelt par seler skal vi skrive dobbelte seler som vist i nedenstående kode.

Python
# Printing single braces print(f'{{Hello, Geek}}') # Printing double braces print(f'{{{{Hello, Geek}}}}') 

Produktion

{Hello, Geek} {{Hello, Geek}} 

Udskrivning af ordbøger nøgleværdi ved hjælp af f-streng i Python

Mens vi arbejder med ordbøger, skal vi sørge for, at hvis vi bruger dobbelte anførselstegn () med f-strengen, så skal vi bruge enkelt anførselstegn (') for nøgler inde i f-strengen i Python og omvendt. Ellers vil det give en syntaksfejl.

Python
Geek = { 'Id': 112, 'Name': 'Harsh'} print(f'Id of {Geek['Name']} is {Geek['Id']}') 

Produktion

Hangup (SIGHUP)  File 'Solution.py', line 4  print(f'Id of {Geek['Name']} is {Geek['Id']}')  ^ SyntaxError: invalid syntax 

Brug af samme type anførselstegn for f-streng og nøgle

Python
Geek = { 'Id': 112, 'Name': 'Harsh'} print(f'Id of {Geek['Name']} is {Geek['Id']}') 

Produktion

Id of Harsh is 112