A linguagem Python fornece algumas funções para formatação de dados em strings e também para leitura de dados formatadas a partir de string. Nesta parte do tutorial vamos estudar essas funções.

O tipo de dado String foi estudado em Python: Strings.

Clique sobre os tópicos listados abaixo para navegar até o conteúdo desejado.

  1. Formatação utilizando % e escape
  2. Formatação utilizando F-string
  3. Formatação utilizando método format
  4. Formatando utilizando métodos center, ljust e rjust
  5. Formatando string utilizando objeto
  6. Precisão
  7. Alinhamento

A forma mais simples de formatação de dados em em Python é utilizando os identificadores de formatação e caracteres escape. Além desses, alinhamento, precisão e outros foram vistos em Python: Entrada e Saída.

Sintaxe
print(string_formatada % (valores)
Exemplo 1
print("int:\t%d\nstr:\t%s\nfloat:\t%f" % (1,"Teste", 1.99))
Saída
int:    1
str:    Teste
float:  1.990000

A linguagem Python possui uma forma mais “elegante” de formatar em que usamos as próprias variáveis como placeholders, { e }, como argumento para formatação. Nessa nova forma, a string formatada é iniciado com "f'".

Sintaxe
f'{nome_variavel1} {nome_variavelN}'
Exemplo 2
livro="Python"
preco = 1.99
quantidade = 9
string = f'{quantidade} livro(s) de {livro} custa(m) R${preco}'
print(string)
Saída
9 livro(s) de Python custa(m) R$1.99

Outra forma de formatação de valores, é utilizando o método format da classe string como pode ser visto na sintaxe abaixo:

Sintaxe
minha_string.format(argumentos)
Exemplo 3
print("{} {} {}".format(1,"Teste", 1.99))
print("{0} {1} {2}".format(1,"Teste", 1.99))
print("{0} {2} {1}".format(1,"Teste", 1.99))
print("{um} {dois} {tres}".format(um=1,dois="Teste", tres=1.99))
Saída
1 Teste 1.99
1 Teste 1.99
1 1.99 Teste

Como pode ser observado, a ordem dos placeholders e dos valores informados para formatação não precisam ser a mesma, pois os índices indicam essa ordem.

A classe string, além do método format, possui os métodos center, rjust e ljust que são utilizandos para justificar valores em uma string que é retornada.

Sintaxe
minha_string.center(tamanho_campo, preenchimento)
minha_string.rjust(tamanho_campo, preenchimento)
minha_string.ljust(tamanho_campo, preenchimento)
Exemplo 4
print("STRING!".center(16, '-'))
print("STRING!".ljust(16, '-'))
print("STRING!".rjust(16, '-'))
Saída
----STRING!-----
STRING!---------
---------STRING!
  1. 18/09/2024 - revisão 2 - Ajustes gramaticais;
  2. 30/08/2024 - revisão 1 - Correção em link de objetivo center, ljust e rjust
  3. 12/02/2024 - versão inicial