Python are mai multe moduri de a construi stringuri cu valori dinamice. Abordarea modernă, recomandată, este f-string (formatted string literal), introdusă în Python 3.6.
f-stringuri — standardul modern
name =
age =
msg =
Prefixul f te permite să încorporezi expresii direct în {} — concis, ușor de citit și rapid. Aceasta este metoda preferată în Python modern.
f"{3.14159:.2f}" # "3.14" — 2 decimal places
f"{1000000:,}" # "1,000,000" — thousands separator
f"{0.85:.1%}" # "85.0%" — percentage
f"{42:05d}" # "00042" — pad with zeros to width 5
f"{'hi':>10}" # " hi" — right-align in width 10
f"{'hi':^10}" # " hi " — center
:spec după valoare controlează precizia, umplerea, alinierea și formatarea numerelor — puternic pentru ieșire curată.
f"{name=}" # "name='Ann'" — prints both the expression AND value
= este la îndemână pentru depanare rapidă — arată numele variabilei și valoarea sa.
"{} is {}".format(name, age) # str.format() — pre-f-string standard
"%s is %d" % (name, age) # %-formatting — old C-style (avoid in new code)
name + " is " + str(age) # concatenation — verbose, error-prone
.format() este încă obișnuit în codul mai vechi; formatarea % este moștenire; concatenarea brută este descurajată (verbală și necesită conversie manuală str()).
Formatarea stringurilor este necesară în permanență — construirea mesajelor, jurnalelor, ieșirii, interogărilor.
F-stringurile sunt standardul modern, ușor de citit și eficient, iar cunoașterea specificatorilor lor de format (precizie, umplere, aliniere, separatori) îți permite să produci o ieșire curată și profesională fără cod verbos.
Recunoașterea stilurilor mai vechi .format() și % ajută la citirea bazelor de cod existente.
Utilizarea bună a f-stringurilor este o parte mică dar omniprezentă a scrierii Python clar și idiomativ.