Python heeft verschillende manieren om strings met dynamische waarden op te bouwen. De moderne, aanbevolen benadering is de f-string (formatted string literal), geïntroduceerd in Python 3.6.
f-strings — Waarom het belangrijk is
name =
age =
msg =
Python heeft verschillende manieren om strings met dynamische waarden op te bouwen. De moderne, aanbevolen benadering is de f-string (formatted string literal), geïntroduceerd in Python 3.6.
name =
age =
msg =
Het f voorvoegsel laat je expressies direct in {} insluiten — beknopt, leesbaar en snel. Dit is de voorkeursmethode in modern Python.
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
De :spec na de waarde bepaalt nauwkeurigheid, opvulling, uitlijning en getalopmaak — krachtig voor nette uitvoer.
f"{name=}" # "name='Ann'" — prints both the expression AND value
De = is handig voor snelle debugging — het toont de variabelnaam en waarde.
"{} 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() is nog steeds gebruikelijk in oudere code; %-opmaak is legacy; directe samenvoeging wordt ontraden (omslachtig en vereist handmatige str() conversie).
Stringopmaak is voortdurend nodig — berichten bouwen, logs, uitvoer, query's.
F-strings zijn de moderne, leesbare en efficiënte standaard, en kennis van opmaakspecificeerders (nauwkeurigheid, opvulling, uitlijning, scheidingstekens) stelt je in staat netjes, professioneel output te produceren zonder omslachtige code.
Het herkennen van oudere .format() en % stijlen helpt bij het lezen van bestaande codebases.
Goed gebruik van f-strings is een klein maar alomtegenwoordig onderdeel van het schrijven van duidelijk, idiomatisch Python.