O que é e como usar Python f-string

Ao fazer uso do recurso Python f-string, você consegue inserir expressões e variáveis complexas em uma string de forma direta, sem precisar realizar qualquer conversão ou se preocupar com a formatação. F-strings em Python simplificam a formatação de strings, tornam códigos mais claros e precisos e poupam esforços de desenvolvimento.

O que é Python f-string?

F-string em Python, ou formatted string literal, é um formato de string em Python introduzido pela versão de Python 3.6. Especialmente desenvolvido para ser aplicado a strings, o recurso de formatação f-string também suporta a realização de cálculos, que podem ser incorporados entre chaves. F-strings em Python permitem que cadeias de caracteres ganhem uma notação mais compacta e objetiva, tornando códigos mais claros e legíveis. Justamente por isso, elas se destacam de outros métodos de formatação, como do str.format() ou da concatenação com +.

Por ser extremamente flexível, o recurso Python f-string aceita a inserção de variáveis e expressões em diferentes tipos de dados, como em inteiros, floats e listas, e até em expressões e funções, sem que seja preciso convertê-las ou formatá-las manualmente. Isso quer dizer que f-strings em Python também agilizam e simplificam o trabalho dos desenvolvedores.

Sintaxe de Python f-string

A estrutura básica de uma f-string em Python é formada pelo prefixo f ou F, seguido da string entre aspas simples ' ou duplas " . Dentro da string, você pode fazer uso de chaves {} quando precisar incorporar variáveis ou expressões. Observe o exemplo:

name = "Peter"
age = 25
formatted_string = f"My name is {name} and I am {age} years old."
print(formatted_string) # Output: My name is Peter and I am 25 years old.
python

Nessa f-string, substituímos a variável name por {name} e a variável age por {age}, para criar uma cadeia de caracteres formatada com as devidas informações.

Hospedagem web com consultor pessoal

Rápido e escalável, confie na hospedagem da IONOS, que inclui domínio grátis no primeiro ano e endereço de e-mail!

  • Domínio
  • SSL Wildcard
  • Suporte 24 horas

Como utilizar Python f-string

Existem diferentes formas de se aplicar e especificar f-strings em códigos escritos em Python.

Python f-string para realizar cálculos dentro de uma string

Python f-strings são especialmente interessantes a quem deseja realizar operações aritméticas dentro de uma string. Com o recurso, você torna-se capaz de definir uma expressão complexa em uma única linha:

num1 = 10
num2 = 5
result = f"The sum of {num1} and {num2} is {num1 + num2}"
print(result) # Output: The sum of 10 and 5 is 15
python

Nesse exemplo de código, a soma de num1 e num2 é realizada dentro de uma f-string, sendo o resultado diretamente apresentado pela string final.

Python f-string e raw string

A combinação dos prefixos r (raw) e f (formatted) cria um tipo especial de string em Python, conhecida como rf-string. Uma rf-string combina a capacidade de uma raw string, de interpretar literalmente sequências de escape, com a flexibilidade e a eficiência de uma f-string, que suporta a incorporação direta de variáveis e expressões. O código abaixo ilustra essa associação:

name = "User"
path = rf'C:\Users\Username\Documents\{name}\file.txt'
print(path) # Output: C:\Users\Username\Documents\User\file.txt
python

Acima, fizemos uso de uma rf-string para especificar um caminho. O uso de {name} dentro da rf-string faz com que a variável name seja inserida de forma direta. Já o r antes da string faz com que a barra invertida \ seja lida como caractere literal, e não como parte de uma sequência de escape.

Python f-string para precisar números de vírgula flutuante

Ao inserir instruções de formatação especiais no seu código, você consegue determinar a quantidade de casas decimais de um número de vírgula flutuante em uma string. Veja:

value = 3.14159265359
formatted_value = f"Rounded value = {value:.3f}"
print(formatted_value) # Output: Rounded value = 3.142
python

Nesse exemplo, a instrução de formatação :.3f ordena que a variável value seja arredondada para três casas decimais antes de ser inserida na string formatada.

Python f-string para definir tamanho e alinhamento

Ao definir o tamanho e o alinhamento de uma f-string em Python, você controla a exibição dos valores inseridos, estabelecendo o campo a ser usado. O recurso é útil para encaixar textos e números em áreas de tamanho específico, e também para alinhá-los à esquerda, à direita ou no centro.

No exemplo de código abaixo, desejamos exibir o nome __Alice__ em um campo de dez caracteres de tamanho, e alinhá-lo à direita:

name = "Alice"
formatted_name = f"Hello, {name:>10}"
print(formatted_name) # Output: Hello,      Alice
python

Uma vez que o valor __Alice__ possui menos de dez caracteres, a especificação {name:>10} faz com que ele seja alinhado à direita.

Python f-string para preencher com zeros ou outros caracteres

O preenchimento com zeros ou outros caracteres influencia o alinhamento de valores que devem ser exibidos em um campo específico. Em situações como essa, f-strings podem ser úteis para exibir números em formatos fixos, como em horários ou sequências.

number = 42
formatted_number = f"Number: {number:06}"
print(formatted_number) # Output: Number: 000042
python

Nesse exemplo de código, :06 indica que o número number deve ser inserido em um campo de seis dígitos. Caso faltem caracteres, estes devem ser preenchidos por zeros à esquerda.

Além de zeros, você também pode usar outros caracteres para preencher espaços em strings, como pode ser observado no código abaixo:

word = "Python"
formatted_word = f"Word: {word:_<10}"
print(formatted_word) # Output: Word: Python____
python
Este artigo foi útil?
Para melhorar a sua experiência, este site usa cookies. Ao acessar o nosso site, você concorda com nosso uso de cookies. Mais informações
Page top