Python erbjuder en kraftfull funktion som kallas f-strängar (formaterade strängliteraler) för att förenkla strängformatering och interpolering. f-strängar introduceras i Python 3.6 ger det ett kortfattat och intuitivt sätt att bädda in uttryck och variabler direkt i strängar. Tanken bakom f-strängar är att göra stränginterpolation enklare.
Hur man använder f-strängar i Python
För att skapa en f-sträng, prefix strängen med bokstaven f . Strängen i sig kan formateras på ungefär samma sätt som du skulle göra med str.format() . F-strängar ger ett kortfattat och bekvämt sätt att bädda in Python-uttryck i strängliteraler för formatering.
Skriv ut variabler med f-sträng i Python
I exemplet nedan har vi använt f-strängen inuti en print()-metod för att skriva ut en sträng. Vi använder hängslen för att använda ett variabelvärde inuti f-strängar, så vi definierar en variabel 'val' med 'Geeks' och använder detta inuti som visas i koden nedan 'val' med 'Nördar' . På samma sätt använder vi 'namn' och de variabel i en andra utskriftssats.
Pytonorm # 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
när uppfanns den första datorn
techcodeview.com is a portal for Geeks. Hello, My name is Tushar and I'm 23 years old.>
Skriv ut datum med f-sträng i Python
I det här exemplet har vi skrivit ut dagens datum med hjälp av datum Tid modul i Python med f-sträng. För det första importerar vi datetime-modulen efter att vi skriver ut datumet med f-sting. Inuti f-strängen 'i dag' tilldelas det aktuella datumet och %B , %d , och %OCH representerar hel månad , dag i månaden , och år respektive.
Pytonorm
# Prints today's date with help # of datetime library import datetime today = datetime.datetime.today() print(f'{today:%B %d, %Y}')>
Produktion
konvertera en int till en sträng java
March 06, 2024>
Notera: F-strängar är snabbare än de två vanligaste strängformateringsmekanismerna, som är %-formatering och str.format().
Citattecken i f-sträng i Python
För att använda någon typ av citattecken med f-strängen i Python måste vi se till att citattecken som används i uttrycket inte är samma som citattecken som används med f-strängen.
Pytonorm
print(f''techcodeview.com'') print(f'''Geeks'for'Geeks''') print(f'''Geeks'for'Geeks''')>
Produktion
'techcodeview.com' Geeks'for'Geeks Geeks'for'Geeks>
Utvärdera uttryck med f-strängar i Python
Vi kan också utvärdera uttryck med f-strängar i Python. För att göra det måste vi skriva uttrycket inuti de lockiga klammerparenteserna i f-sträng och det utvärderade resultatet kommer att skrivas ut som visas i koden nedan.
Pytonorm 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>
Fel vid användning av f-sträng i Python
Omvänt snedstreck i f-sträng i Python
I Python f-sträng kan Backslash inte användas i formatsträng direkt.
Pytonorm 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 dock lägga tillbaka snedstrecket i en variabel som en lösning:
Pytonorm newline = ord('
') print(f'newline: {newline}')>
Produktion
applet
newline: 10>
Infoga kommentarer i f-sträng i Python
Vi kan inte använda kommentarer i F-strängsuttryck. Det kommer att ge ett fel:
filmer123 tillPytonorm
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 '#'>
Skriva ut hängslen med f-sträng i Python
Om vi vill visa lockiga klammerparenteser i f-strängens utgång måste vi använda dubbla lockiga klammerparenteser i f-strängen. Observera att för varje enskilt par hängslen måste vi skriva dubbla hängslen som visas i koden nedan.
Pytonorm # Printing single braces print(f'{{Hello, Geek}}') # Printing double braces print(f'{{{{Hello, Geek}}}}')>
Produktion
{Hello, Geek} {{Hello, Geek}}>
Skriva ut ordböcker nyckel-värde med f-sträng i Python
När vi arbetar med ordböcker måste vi se till att om vi använder dubbla citattecken () med f-strängen så måste vi använda enkla citattecken (') för nycklar inuti f-strängen i Python och vice versa. Annars kommer det att skapa ett syntaxfel.
Pytonorm 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>
Använder samma typ av citattecken för f-sträng och nyckel
Pytonorm Geek = { 'Id': 112, 'Name': 'Harsh'} print(f'Id of {Geek['Name']} is {Geek['Id']}')>
Produktion
Id of Harsh is 112>