Como Utilizar o 'How funciona' para o Python de forma fácil?
Python’s F-String para Interpolação e Formatação de Strings
por Joanna Jablonski, 18 de outubro de 2023
Introdução
As f-strings do Python oferecem uma forma rápida de interpolar e formatar strings. Elas são legíveis, concisas e menos propensas a erros do que ferramentas tradicionais de interpolação e formatação de strings, como o método .format()
e o operador de módulo (%
). Uma f-string também é um pouco mais rápida do que essas ferramentas!
Ao final deste tutorial, você saberá por que as f-strings são uma ferramenta tão poderosa que você deve aprender e dominar como um desenvolvedor Python.
Neste tutorial, você aprenderá como:
- Interpolar valores, objetos e expressões em suas strings usando f-strings
- Formatar f-strings usando a minilinguagem de formatação de string do Python
- Aproveitar alguns recursos legais das f-strings no Python 3.12 e além
- Decidir quando usar ferramentas tradicionais de interpolação ao invés de f-strings
Para tirar o máximo proveito deste tutorial, você deve estar familiarizado com o tipo de dados string do Python. Também será benéfico ter experiência com outras ferramentas de interpolação de string, como o operador de módulo (%
) e o método .format()
.
Interpolação e Formatação de Strings Antes do Python 3.6
Antes do Python 3.6, você tinha duas principais ferramentas para interpolar valores, variáveis e expressões dentro de literais de string:
- O operador de interpolação de string (
%
), ou operador de módulo - O método
str.format()
Vamos revisar essas duas ferramentas de interpolação de string nas seções seguintes. Você também aprenderá sobre a capacidade de formatação de strings usando essas ferramentas tradicionais.
O Operador de Interpolação de String, %
O operador de interpolação de string (%
) é uma forma antiga de interpolar valores em strings. Você pode facilmente formatar uma string substituindo marcadores de lugar %s
dentro da string por valores fornecidos. Por exemplo:
Este código imprimirá:
Você pode usar diferentes marcadores de lugar para diferentes tipos de dados, como %s
para strings, %d
para inteiros, %f
para floats, entre outros.
O Método str.format()
O método str.format()
é uma forma mais recente e flexível de interpolar valores em strings. Ele permite criar strings com espaços reservados {}
que serão substituídos pelos valores fornecidos. Por exemplo:
Este código também imprimirá:
Você também pode especificar valores pelos seus índices ou por chaves nomeadas dentro dos espaços reservados. Por exemplo:
Ambos os códigos imprimirão o mesmo resultado.
Embora o método str.format()
seja mais flexível do que o operador de interpolação de string, ainda assim há uma forma mais moderna e eficiente de realizar interpolação e formatação de strings: as f-strings.
Fazendo Interpolação de Strings com as F-Strings do Python
As f-strings do Python são uma adição poderosa ao arsenal de ferramentas de interpolação e formatação de strings. Elas permitem que você interpole valores, objetos e expressões diretamente em suas strings de uma forma legível e concisa.
Para criar uma f-string, você precisa adicionar o prefixo f
antes das aspas da string e usar chaves {}
para envolver as expressões que serão interpoladas. Por exemplo:
Este código também imprimirá:
Você pode usar qualquer expressão Python válida dentro das chaves das f-strings. Por exemplo:
Este código imprimirá:
As f-strings também suportam formatação avançada usando a minilinguagem de formatação de string do Python. Você pode especificar quantas casas decimais exibir para floats, o alinhamento e a largura dos valores, entre outras formatações. Por exemplo:
Este código imprimirá:
Vantagens das F-Strings
As f-strings do Python têm várias vantagens em relação às ferramentas tradicionais de interpolação e formatação de strings:
- Legibilidade: As f-strings são fáceis de ler e entender. Você pode ver o resultado final da string diretamente no código-fonte.
- Concisão: As f-strings são menos verbosas do que outras formas de interpolação e formatação de strings.
- Rapidez: Como as f-strings são avaliadas durante o tempo de compilação, elas são mais rápidas do que outras ferramentas de interpolação e formatação de strings.
- Flexibilidade: As f-strings suportam uma ampla variedade de expressões e formatações usando a minilinguagem de formatação de string do Python.
Com essas vantagens, as f-strings são uma escolha ideal para interpolação e formatação de strings em Python.
Outros Recursos Relevantes das F-Strings
Além da interpolação e formatação básicas, as f-strings também têm outros recursos interessantes que podem ser úteis em diferentes situações. Vamos explorar alguns desses recursos.
Usando a Representação em String de um Objeto nas F-Strings
As f-strings permitem que você use a representação em string de um objeto diretamente nas strings interpoladas. Para fazer isso, basta chamar a função str()
ou repr()
dentro das chaves das f-strings. Por exemplo:
Este código imprimirá:
Essa capacidade de usar a representação em string de um objeto pode ser útil para exibir informações úteis e resumidas sobre um objeto nas suas strings interpoladas.
Expressões de Autodocumentação para Depuração
Outro recurso interessante das f-strings é a capacidade de incluir expressões de autodocumentação dentro das chaves. Essas expressões de autodocumentação são úteis durante a depuração do código, pois permitem que você exiba informações sobre variáveis e expressões diretamente nas suas strings interpoladas. Por exemplo:
Este código imprimirá:
O valor da variável result
foi incluído diretamente na string interpolada usando a expressão {result}
. Isso pode ser útil para depurar código e verificar o resultado de cálculos ou operações.
Comparando Desempenho: F-String vs Ferramentas Tradicionais
Além de serem mais legíveis e concisas, as f-strings também são mais rápidas do que as ferramentas tradicionais de interpolação e formatação de strings. Isso ocorre porque as f-strings são avaliadas durante o tempo de compilação, enquanto as ferramentas tradicionais são avaliadas durante o tempo de execução.
Conclusão
As f-strings do Python são uma adição poderosa às ferramentas de interpolação e formatação de strings. Elas oferecem uma sintaxe legível, concisa e eficiente para inserir valores, objetos e expressões em strings. Além disso, as f-strings são mais rápidas do que as ferramentas tradicionais.
Ao aprender e dominar as f-strings, você se tornará um desenvolvedor Python mais habilidoso e eficiente na manipulação de strings em seus programas.
Este tutorial cobriu os conceitos básicos das f-strings e também explorou alguns recursos interessantes, como usar a representação em string de um objeto e incluir expressões de autodocumentação.
Agora que você conhece as f-strings do Python, experimente usá-las em seus próprios projetos e aproveite os benefícios dessa poderosa ferramenta de interpolação e formatação de strings!