Ao trabalhar com os métodos de formatação de strings do Python, como .format()
ou f-strings, você pode se deparar com a situação em que precisa incluir chaves literais {}
no seu resultado. Como as chaves são usadas na sintaxe desses métodos de formatação para definir espaços reservados para a substituição de variáveis, você precisa de uma maneira de dizer ao Python que deseja incluir um caractere de chave no resultado, e não como um espaço reservado. Veja como você pode escapar chaves em suas strings.
Incluindo Chaves em .format()
Para incluir chaves literais em uma string que usa o método .format()
, você precisa duplicar cada chave. Isso significa que, onde quer que você queira que uma única {
ou }
apareça na string final, você deve usar {{
ou }}
na string que está sendo formatada.
Aqui está um exemplo simples:
# Maneira correta de escapar chaves com .format()
formatted_string = "{{ Olá }} {0}"
print(formatted_string.format(42))
TestarIsso produzirá a saída:
{ Olá } 42
Incluindo Chaves em f-strings
Com a introdução das f-strings no Python 3.6, a formatação de strings se tornou ainda mais direta. No entanto, o mesmo princípio de duplicar as chaves se aplica quando você quer incluí-las literalmente na sua string.
Veja como fazer isso com uma f-string:
# Maneira correta de escapar chaves com f-strings
n = 42
print(f"{{ Olá }} {n}")
TestarE a saída será:
{ Olá } 42
Se você estiver lidando com expressões dentro das chaves e ainda quiser incluir chaves literais, precisará usar chaves triplas:
# Usando expressões com chaves literais em f-strings
hello = "OLÁ"
print(f"{{{hello.lower()}}}")
TestarIsso resultará na saída:
{ola}
Resumo
Para resumir, quando você precisar incluir chaves em uma string ao usar .format()
ou f-strings, lembre-se de duplicar cada chave. Esse truque simples permite que você incorpore chaves literais em suas strings formatadas sem confundi-las com espaços reservados para a substituição de variáveis. Seja formatando strings para saída ou para uso dentro dos seus programas Python, saber como escapar caracteres especiais como chaves é essencial para um código claro e livre de erros.
![](https://hub.asimov.academy/wp-content/uploads/2024/06/maxresdefault-6.jpg)
Comentários