10.1 format()
Muitas vezes, precisamos exibir muitos dados no console (na tela). Não
somos os primeiros a enfrentar isso — por isso, já faz tempo que o Python possui
a função format()
, que permite
combinar strings e exibir dados na tela de forma mais fácil e compreensível.
A função format()
é usada para inserir valores em
uma string em posições específicas. A sintaxe da função é a seguinte:
"Modelo de string de {} até {}".format(valor1, valor2,…)
Fato 1. A função format()
— é uma função filha
da string, então ela é chamada a partir de uma string. Em vez de passar a string para a função, escrevemos a string, depois um ponto, e
então chamamos a função format()
e passamos seus
parâmetros para ela.
Fato 2. A função format()
preenche
a string-modelo com os valores passados. Ela transforma os valores passados em strings (se houver números, por exemplo) e os insere nos
locais marcados com os símbolos {}
. Esse local para inserção de valor
é chamado de placeholder
.
Uso básico:
welcome_message = "Olá, {}, bem-vindo ao {}!"
print(welcome_message.format("Ana", "nosso loja"))
Resultado:
"Olá, Ana, bem-vindo ao nosso loja!"
Formatação de números:
output = "Dados: {0:.2f} e {1:.2f}".format(3.1415926, 2.71828)
print(output)
Resultado: "Dados: 3.14 e 2.72"
—
demonstração de limitar a saída para duas casas decimais.
Uso de palavras-chave:
output = "{name} trabalha na {company}"
print(output.format(name="Sérgio", company="Google"))
Resultado:
"Sérgio trabalha na Google"
O uso de format()
melhora a legibilidade e
manutenção do código, permitindo que o formato seja alterado facilmente sem
a necessidade de editar toda a string.
10.2 f-notação
A partir da versão 3.6, o Python introduziu um novo tipo de string — f-strings
,
que literalmente significam "formatted string". Essas strings melhoram
a legibilidade do código e também são mais rápidas do que outros métodos
de formatação.
Para usar f-strings
, coloca-se a letra
"f"
ou "F"
antes da string. As expressões a serem inseridas
são colocadas entre chaves {}
:
Exemplo:
force = "Lado Negro"
message = f"Que a força esteja com você, {force}!"
print(message) # Vai imprimir: Que a força esteja com você, Lado Negro!
Importante! Entre as chaves, você pode especificar variáveis, que estão disponíveis no escopo atual (falaremos disso mais tarde) e o Python mesmo transforma em string e insere no lugar certo.
Exemplo:
age = 28
message = f"Eu tenho {age} anos"
print(message) # Vai imprimir: Eu tenho 28 anos
Além disso, dentro das chaves você pode usar expressões com várias variáveis.
Exemplo:
birth_year = 1985
current_year = 2024
message = f"Eu tenho {current_year - birth_year} anos"
print(message) # Vai imprimir: Eu tenho 39 anos
Por baixo dos panos, tudo isso é convertido em uma chamada à função
format()
, mas a nova abordagem é realmente mais conveniente.
Use à vontade.
10.3 Parâmetros sep
e end
No Python, a função print()
fornece
dois parâmetros úteis — sep
e end
,
que permitem controlar a saída de dados. Esses parâmetros tornam
a função print()
mais flexível e podem ser usados
para formatar a saída sem necessidade de usar
funções adicionais ou operações complexas com strings.
O parâmetro sep
define o símbolo ou
string que será usada para separar múltiplos
valores passados no print()
. Por padrão, sep
é definido como espaço. Isso significa que, se você passar
múltiplos argumentos para print()
, eles serão separados
por espaço.
Mas se você quiser que os dados sejam separados por, por exemplo, vírgula, então você precisa adicionar no final o parâmetro
sep
e
atribuir a ele uma nova string separadora.
Exemplo:
print("Hello", "world") # Saída: Hello world
print("Hello", "world", sep=", ") # Saída: Hello, world
Ou você pode, por exemplo, fazer com que cada valor seja exibido em
uma nova linha. Então, para o parâmetro sep
você deve atribuir
o símbolo especial de nova linha — que é representado por dois caracteres
“\n”
.
Exemplo | Explicação |
---|---|
|
|
O parâmetro end
define o que será impresso após todos os valores passados.
O valor padrão de end
é o caractere de nova linha (\n)
, o que significa
quebra de linha após a execução de print()
.
Alterando end
, você pode controlar como os dados são exibidos, por exemplo,
para continuar a impressão na mesma linha:
Exemplo:
print("Hello", end=" ")
print("world") # Saída: Hello world
O uso de sep
e end
pode ser extremamente útil em cenários onde requer-se formatação especial
de saída, como na criação de tabelas, relatórios ou na impressão de dados em uma linha sem
quebra automática para outra.
Além de simplificar o código e eliminar a necessidade de adicionar separadores manualmente ou controlar quebras de linha, o uso de sep
e end
aumenta a legibilidade e manutenção do código.
GO TO FULL VERSION