Python ka disa mënyra për të ndërtuar vargjete me vlera dinamike. Qasja moderne, e rekomanduar, është f-string (formatted string literal), e prezantuar në Python 3.6.
f-stringjet — standardi modern
name =
age =
msg =
Prefksi f ju lejon të futni shprehje drejtpërdrejt në {} — i shkurtër, i lexueshëm dhe i shpejtë. Kjo është metoda e preferuar në Python-in 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 pas vlerës kontrollon saktësinë, mbushjen, radhësimin dhe formatimin e numrave — i fuqishëm për dalje të pastër.
f"{name=}" # "name='Ann'" — prints both the expression AND value
= është i përshtatshëm për korrigjim të shpejtë — tregon emrin e ndryshores dhe vlerën e tij.
"{} 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() është akoma i zakonshëm në kodin më të vjetër; formatimi % është trashëgim; bashkimi i drejtpërdrejtë nuk rekomandohet (i gjatë dhe kërkon konvertim manual str()).
Formatimi i vargjeve është i nevojshëm vazhdimisht — ndërtimi i mesazheve, regjistrave, daljes, pyetjeve.
F-stringjet janë standardi modern, i lexueshëm dhe i efektshëm, dhe njohja e specifikuesve të tyre të formatimit (saktësia, mbushja, radhësimi, ndarësit) ju lejon të prodhoni dalje të pastër dhe profesionale pa kod të gjatë.
Razvijimi i stileve më të vjetra .format() dhe % ndihmon gjatë leximit të bazave të kodit ekzistues.
Përdorimi i mirë i f-stringjeve është një pjesë e vogël, por e gjithanshme e shkrimit të Python-it të qartë dhe idiomatik.