Iz­man­to­jot Python f-strings, varat ievietot sa­rež­ģī­tus iz­teik­smes un mainīgos tieši virknē, neveicot papildu kon­ver­tē­ša­nu vai for­ma­tē­ša­nu.

Ko var darīt Python f-strings?

Python f-strings ir Python string formāts, kas tika ieviests ar Python 3.6. Tie ir pazīstami arī kā formatēti string literāli. F-stringā var izvērtēt aprēķinus, iz­man­to­jot izliektās iekavas. F-strings ļauj izmantot kompaktu notāciju nekā citi string formāti, piemēram, str.format() un sa­vie­no­jums ar +. Tas galu galā nodrošina skaidrāku un la­ko­nis­kā­ku kodu.

F-strings ir ļoti elastīgi un ļauj ievietot dažādus datu tipus, piemēram , veselos skaitļus, peldskait­ļus, sarakstus, iz­teik­smes un funkcijas, tos ne­kon­ver­tē­jot vai ne­pie­vie­no­jot īpašu for­ma­tē­ju­mu. Python f-strings parasti ir ātrāki nekā citas string for­ma­tē­ša­nas metodes Python.

Kāda ir Python f-stringu sintakse?

Python f-string pa­mats­truk­tū­ra sastāv no prefiksa f vai F, kam seko teksta virkne pēdiņās (“ vai ’). Teksta virknē var izmantot izliektās iekavas {}, lai ievietotu mainīgos un iz­teik­smes.

name = "Peter"
age = 25
formatted_string = f"My name is {name} and I am {age} years old."
print(formatted_string) # Output: My name is Peter and I am 25 years old.
python

Šajā piemērā mēs ie­vie­to­jam mainīgos name un age izliektās iekavās f-stringā{name} un {age}.

Kā tiek iz­man­to­tas Python f-virknes?

F-stīgas var izmantot dažādos veidos.

Aprēķinu veikšana teksta rindā

Python f-strings ir īpaši praktiski, ja vēlaties veikt arit­mē­tis­kos aprēķinus stringā. Tie ļauj definēt sarežģītu izteiksmi vienā koda rindā.

num1 = 10
num2 = 5
result = f"The sum of {num1} and {num2} is {num1 + num2}"
print(result) # Output: The sum of 10 and 5 is 15
python

Šajā piemērā f-stringā tiek pie­vie­no­ti num1 un num2. Rezultāts tiek parādīts galīgajā string izvades rezultātā.

Python f-strings un ne­ap­s­trā­dā­ti stringi

Kom­bi­nā­ci­ja r ne­ap­s­trā­dā­tiem stīngiem un f f-stīngiem Python izveido īpaša veida stīngu, kas pazīstams kā rf-stīngs. Ar rf-stīngiem var apvienot ne­ap­s­trā­dā­tu stīngu fun­kcio­na­li­tā­ti ar f-stīngu elas­tī­gu­mu. R-stīngi in­ter­pre­tē iz­vai­rī­ša­nās sekvences burtiski, bet f-stīngi var tieši iegult mainīgos un iz­teik­smes stīngā.

name = "User"
path = rf'C:\Users\Username\Documents\{name}\file.txt'
print(path) # Output: C:\Users\Username\Documents\User\file.txt
python

Iepriekš minētajā kodā mēs iz­man­to­jām rf-string, lai definētu ceļu. Mēs iz­man­to­jām {name} rf-string, lai tieši ievietotu mainīgo name. Tajā pašā laikā r pirms string nodrošina, ka at­grie­ze­nis­kais slīpsvīt­ru \ tiek uzskatīts par burtisku rakstzīmi, nevis par daļu no iz­vai­rī­ša­nās secības.

Peldošo skaitļu pre­ci­zi­tā­te

Jūs varat izmantot īpašus for­ma­tē­ša­nas iz­tei­ku­mus, lai norādītu decimālo zīmju skaitu peldošā skaitlī f-virknē.

value = 3.14159265359
formatted_value = f"Rounded value = {value:.3f}"
print(formatted_value) # Output: Rounded value = 3.142
python

Iepriekš minētajā kodā for­ma­tē­ša­nas izteikums :.3f norāda, ka mainīgais value jānoapaļo līdz trim zīmēm aiz komata un jāievieto formatētā virknē.

Platums un iz­vie­to­jums

Python f-strings, platuma un iz­vie­to­ju­ma spe­ci­fi­kā­ci­jas ļauj kontrolēt, kā vērtības tiek parādītas laukā. Tas ir noderīgi, lai tekstu un skaitļus izvietotu konkrētā vietā un izvietotu tos pa kreisi, pa labi vai pa vidu.

Teiksim, ka mums ir vārds __Alice__ un mēs vēlamies to izvietot pa labi laukā, kura platums ir 10 rakstzī­mes.

name = "Alice"
formatted_name = f"Hello, {name:>10}"
print(formatted_name) # Output: Hello,      Alice
python

Tā kā vērtība ir mazāka par 10 rakstzī­mēm, {name:>10} to iz­lī­dzi­nās pa labi.

Aiz­pil­dī­ša­na ar nulēm vai citiem simboliem

Aiz­pil­dī­ša­na ar nulēm vai citiem simboliem ietekmē skaitļu iz­vie­to­ju­mu laukā. Tas ir noderīgi, ja vēlaties, lai skaitļi būtu fiksētā formātā, piemēram, kad parādāt laiku vai skait­lis­kas vērtības.

number = 42
formatted_number = f"Number: {number:06}"
print(formatted_number) # Output: Number: 000042
python

Šajā piemērā :06 norāda, ka skaitlis number tiks ievadīts sešu ciparu laukā un visi trūk­sto­šie cipari tiks aiz­pil­dī­ti ar nulēm.

Jūs varat izmantot arī citus simbolus, ne tikai nulles, lai aiz­pil­dī­tu virkni:

word = "Python"
formatted_word = f"Word: {word:_<10}"
print(formatted_word) # Output: Word: Python____
python
Go to Main Menu