cadenes f en Python

Python ofereix una funció potent anomenada cordes f (literals de cadena amb format) per simplificar el format i la interpolació de les cadenes. cordes f s'introdueix a Python 3.6, proporciona una manera concisa i intuïtiva d'incrustar expressions i variables directament a les cadenes. La idea darrere de les cadenes f és simplificar la interpolació de cadenes.

Com utilitzar les cadenes f a Python

Per crear una cadena F, prefixeu la cadena amb la lletra f . La cadena en si es pot formatar de la mateixa manera que ho faríeu str.format() . Les cadenes F proporcionen una manera concisa i còmoda d'incrustar expressions de Python dins de literals de cadena per donar format.

Imprimeix variables utilitzant la cadena f a Python

A l'exemple següent, hem utilitzat la cadena f dins d'un mètode print() per imprimir una cadena. Utilitzem claus per utilitzar un valor variable dins de les cadenes f, així que definim una variable 'val' amb 'Geeks' i l'utilitzem a l'interior tal com es veu al codi següent 'val' amb 'frikis' . De la mateixa manera, fem servir el 'nom' i el variable dins d'una segona instrucció d'impressió.

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

Sortida

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

Imprimeix la data amb la cadena f a Python

En aquest exemple, hem imprès la data d'avui amb el data i hora mòdul en Python amb corda f. En primer lloc, importem el mòdul datetime i després imprimim la data amb f-sting. Dins de la corda F 'avui' assignat la data actual i %B , %d , i %Y representa la mes complet , dia del mes , i curs respectivament.

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

Sortida

March 06, 2024 

Nota: Les cadenes F són més ràpides que els dos mecanismes de format de cadenes més utilitzats, que són % formatting i str.format().

Cometes a la cadena F a Python

Per utilitzar qualsevol tipus de cometes amb la cadena f a Python ens hem d'assegurar que les cometes utilitzades dins de l'expressió no són les mateixes que les cometes utilitzades amb la cadena f.

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

Sortida

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

Avalueu expressions amb cadenes f en Python

També podem avaluar expressions amb cadenes f en Python. Per fer-ho, hem d'escriure l'expressió dins de les claus a la cadena f i el resultat avaluat s'imprimirà tal com es mostra a la sortida del codi següent.

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

Sortida

Ram got total marks 219 out of 300 

Errors en utilitzar la cadena f a Python

Barres invertides a la cadena F a Python

A la cadena f de Python, la barra invertida no es pot utilitzar directament en la cadena de format.

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

Sortida

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 

Tanmateix, podem posar la barra invertida en una variable com a solució alternativa:

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

Sortida

newline: 10 

Comentaris en línia en cadena f a Python

No podem utilitzar comentaris dins d'expressions de cadena F. Donarà un error:

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

Sortida:

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

Impressió de claus utilitzant una cadena f a Python

Si volem mostrar claus a la sortida de la cadena f, haurem d'utilitzar claus dobles a la cadena f. Tingueu en compte que per a cada parell de claus, hem d'escriure claus dobles tal com es veu al codi següent.

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

Sortida

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

Impressió de valor-clau de diccionaris mitjançant cadena f a Python

Mentre treballem amb diccionaris, ens hem d'assegurar que si utilitzem cometes dobles () amb la cadena f, hem d'utilitzar cometes simples (‘) per a les claus dins de la cadena f a Python i viceversa. En cas contrari, generarà un error de sintaxi.

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

Sortida

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

Utilitzant el mateix tipus de cometes per a la cadena f i la clau

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

Sortida

Id of Harsh is 112