Python tem várias formas de construir strings com valores dinâmicos. A abordagem moderna e recomendada é a f-string (formatted string literal), introduzida no Python 3.6.
f-strings — o padrão moderno
name =
age =
msg =
Python tem várias formas de construir strings com valores dinâmicos. A abordagem moderna e recomendada é a f-string (formatted string literal), introduzida no Python 3.6.
name =
age =
msg =
O prefixo f permite incorporar expressões diretamente em {} — conciso, legível e rápido. Este é o método preferido no Python moderno.
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
O :spec após o valor controla precisão, preenchimento, alinhamento e formatação de números — poderoso para saída limpa.
f"{name=}" # "name='Ann'" — prints both the expression AND value
O = é útil para depuração rápida — mostra o nome da variável e seu valor.
"{} 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() ainda é comum em código mais antigo; formatação % é legada; concatenação bruta é desencorajada (verbosa e requer conversão manual str()).
Formatação de strings é necessária constantemente — construir mensagens, logs, saída, consultas.
As f-strings são o padrão moderno, legível e eficiente, e conhecer seus especificadores de formato (precisão, preenchimento, alinhamento, separadores) permite produzir saída limpa e profissional sem código verboso.
Reconhecer os estilos antigos .format() e % ajuda ao ler bases de código existentes.
Usar f-strings bem é uma parte pequena mas onipresente de escrever Python claro e idiomático.