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