Python:
Interpolando uma string
Como fazer:
No Python 3.6 e versões posteriores, você pode interpolar strings usando f-strings. Veja como:
name = 'Alice'
age = 30
greeting = f"Olá, {name}. Você tem {age} anos."
print(greeting)
Saída:
Olá, Alice. Você tem 30 anos.
Você também pode usar expressões dentro das chaves:
a = 5
b = 10
info = f"Cinco mais dez é {a + b}, não {2 * (a + b)}."
print(info)
Saída:
Cinco mais dez é 15, não 30.
Mergulho Profundo
Antes do Python 3.6, .format()
era o método usado para interpolação de strings:
name = 'Bob'
age = 25
greeting = "Olá, {}. Você tem {} anos.".format(name, age)
print(greeting)
O Python antigo (versões < 2.6) usava o operador %
para interpolação, o que é menos intuitivo e pode se tornar confuso com múltiplas variáveis:
name = 'Carol'
age = 35
greeting = "Olá, %s. Você tem %d anos." % (name, age)
print(greeting)
Além de uma sintaxe mais limpa, as f-strings são mais rápidas porque são avaliadas em tempo de execução e então convertidas diretamente em uma operação eficiente de formatação de string. O método .format()
e o operador %
envolvem mais etapas e são mais lentos.
Veja Também
- PEP 498 – Interpolação Literal de Strings para a documentação oficial sobre f-strings.
- Python f-strings por Real Python para um tutorial sobre como usar f-strings.
- O Método .format() na documentação do Python para entender o método mais antigo
.format()
de formatação de strings.