Tamanho de fonte
Alto contraste
Altura de linha

Como incluir caracteres de chaves ({}) em uma string ao usar .format?

Avatar de Ana Maria Gomes Ana Maria Gomes
2 minutos de leitura 7 meses atrás

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))
Testar

Isso 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}")
Testar

E 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()}}}")
Testar

Isso 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.

Imagem de um notebook

Cursos de programação gratuitos com certificado

Aprenda a programar e desenvolva soluções para o seu trabalho com Python para alcançar novas oportunidades profissionais. Aqui na Asimov você encontra:

  • Conteúdos gratuitos
  • Projetos práticos
  • Certificados
  • +20 mil alunos e comunidade exclusiva
  • Materiais didáticos e download de código
Inicie agora

Comentários

Comentar
Faça parte da discussão Crie sua conta gratuita e compartilhe
sua opinião nos comentários
Entre para a Asimov