Python ponuja zmogljivo funkcijo, imenovano f-strune (formatirani literali nizov) za poenostavitev oblikovanja nizov in interpolacije. f-strune je uveden v Python 3.6 in zagotavlja jedrnat in intuitiven način za vdelavo izrazov in spremenljivk neposredno v nize. Ideja f-nizov je poenostaviti interpolacijo nizov.
Kako uporabljati nize f v Pythonu
Če želite ustvariti f-niz, pred niz dodajte črko f . Sam niz je mogoče oblikovati na približno enak način, kot bi ga str.format() . Nizi F zagotavljajo jedrnat in priročen način za vdelavo izrazov Python v literale nizov za oblikovanje.
Natisnite spremenljivke z nizom f v Pythonu
V spodnjem primeru smo za tiskanje niza uporabili f-niz znotraj metode print(). Za uporabo vrednosti spremenljivke znotraj f-nizov uporabljamo zavite oklepaje, zato definiramo spremenljivko 'val' z 'Geeks' in jo uporabimo znotraj, kot je prikazano v spodnji kodi 'val' z 'Geeks' . Podobno uporabljamo 'ime' in the spremenljivka znotraj drugega stavka za tiskanje.
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.')> Izhod
techcodeview.com is a portal for Geeks. Hello, My name is Tushar and I'm 23 years old.>
Natisnite datum z nizom f v Pythonu
V tem primeru smo natisnili današnji datum z uporabo Datum čas modul v Pythonu z f-niz. Za to najprej uvozimo modul datetime, nato pa natisnemo datum s pomočjo f-stinta. Znotraj f-nize 'danes' dodeljen trenutni datum in %B , %d , in % IN predstavlja polni mesec , dan v mesecu , in leto oz.
Python # Prints today's date with help # of datetime library import datetime today = datetime.datetime.today() print(f'{today:%B %d, %Y}')> Izhod
March 06, 2024>
Opomba: F-nizi so hitrejši od dveh najpogosteje uporabljenih mehanizmov za oblikovanje nizov, to sta % formatiranje in str.format().
Narekovaji v f-nizu v Pythonu
Za uporabo katere koli vrste narekovajev z nizom f v Pythonu se moramo prepričati, da narekovaji, uporabljeni znotraj izraza, niso enaki kot narekovaji, uporabljeni z nizom f.
Python print(f''techcodeview.com'') print(f'''Geeks'for'Geeks''') print(f'''Geeks'for'Geeks''')>
Izhod
'techcodeview.com' Geeks'for'Geeks Geeks'for'Geeks>
Vrednotenje izrazov s f-nizi v Pythonu
V Pythonu lahko ovrednotimo tudi izraze s f-nizi. Da bi to naredili, moramo izraz zapisati znotraj zavitih oklepajev v nizu f in ovrednoten rezultat bo natisnjen, kot je prikazano v izhodu spodnje kode.
Python english = 78 maths = 56 hindi = 85 print(f'Ram got total marks {english + maths + hindi} out of 300')> Izhod
Ram got total marks 219 out of 300>
Napake pri uporabi niza f v Pythonu
Poševnice nazaj v f-nizu v Pythonu
V nizu f v Pythonu poševnice nazaj ni mogoče uporabiti neposredno v nizu oblikovanja.
Python f'newline: {ord('
')'> Izhod
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>
Vendar pa lahko kot rešitev postavimo poševnico nazaj v spremenljivko:
Python newline = ord('
') print(f'newline: {newline}')> Izhod
newline: 10>
Vgrajeni komentarji v nizu f v Pythonu
Znotraj izrazov F-niza ne moremo uporabiti komentarjev. Prikaže napako:
Python f'techcodeview.com is {5*2 + 3 #geeks-5} characters.'> Izhod:
Hangup (SIGHUP) File 'Solution.py', line 1 f'techcodeview.com is {5*2 + 3 #geeks-5} characters.' ^ SyntaxError: f-string expression part cannot include '#'>Tiskanje oklepajev z nizom f v Pythonu
Če želimo prikazati zavite oklepaje v izpisu f-niza, moramo v f-nizu uporabiti dvojne zavite oklepaje. Upoštevajte, da moramo za vsak posamezen par oklepajev vnesti dvojne oklepaje, kot je prikazano v spodnji kodi.
Python # Printing single braces print(f'{{Hello, Geek}}') # Printing double braces print(f'{{{{Hello, Geek}}}}')> Izhod
{Hello, Geek} {{Hello, Geek}}>Tiskanje ključa-vrednosti slovarjev z nizom f v Pythonu
Pri delu s slovarji se moramo prepričati, da če uporabljamo dvojne narekovaje () z nizom f, potem moramo uporabiti enojni narekovaj (‘) za ključe znotraj niza f v Pythonu in obratno. V nasprotnem primeru bo sprožila sintaktično napako.
Python Geek = { 'Id': 112, 'Name': 'Harsh'} print(f'Id of {Geek['Name']} is {Geek['Id']}')> Izhod
Hangup (SIGHUP) File 'Solution.py', line 4 print(f'Id of {Geek['Name']} is {Geek['Id']}') ^ SyntaxError: invalid syntax>Uporaba iste vrste narekovajev za f-niz in ključ
Python Geek = { 'Id': 112, 'Name': 'Harsh'} print(f'Id of {Geek['Name']} is {Geek['Id']}')> Izhod
Id of Harsh is 112>