Entrada e saída em Python: print(), input() e formatação
Este tutorial foi traduzido do original em inglês.Read in EnglishLeer en españolЧитать на русскомอ่านภาษาไทยAvisar sobre um erro de tradução
Todo programa precisa de um jeito de se comunicar com o mundo lá fora. Um app de previsão do tempo mostra temperaturas. Um jogo exibe a sua pontuação. Uma calculadora mostra respostas. Tudo isso é saída.
Em Python, print() é a sua principal ferramenta para mostrar informações ao usuário. Parece simples à primeira vista, mas tem opções poderosas que permitem controlar exatamente a aparência da saída.
Neste tutorial, você vai aprender técnicas avançadas de print(), truques de formatação para uma saída organizada e como o input() lê o que o usuário digita. No final, você vai conseguir criar saídas caprichadas, com cara de programa profissional.
Como o print() funciona com vários valores?
Você já sabe que print("Hello") exibe um texto. Mas o print() consegue lidar com vários valores de uma vez. Separe-os com vírgulas, e o Python exibe todos com espaços entre eles.
Pense no print() como um garçom repetindo o seu pedido. Você passa vários itens, e ele anuncia cada um com uma pausa entre eles.
Alice 25 Paris Name: Alice Age: 25 years
Repare em algo útil: o Python adiciona automaticamente um espaço entre os valores. Você também não precisa converter números em strings. A função print() cuida disso para você.
O que o parâmetro sep faz no print()?
Por padrão, o print() coloca um espaço entre os valores. O parâmetro sep permite trocar esse separador pelo que você quiser. O nome vem de "separator" (separador).
Imagine que você está enfiando contas em um colar. O sep é o nó que você dá entre uma conta e outra. Você escolhe o que vai entre os itens.
A B C A-B-C A | B | C ABC A B C
O parâmetro sep é perfeito para montar saídas formatadas, como datas, caminhos de arquivos ou dados CSV, sem precisar concatenar strings na mão.
2025-3-15 home/user/docs Alice,25,Paris
O que o parâmetro end faz no print()?
Toda vez que o print() termina, ele adiciona um caractere de nova linha no final. É por isso que cada chamada de print() começa em uma linha nova. O parâmetro end permite mudar o que vem depois da saída.
Pense no end como a pontuação no fim de uma frase. Por padrão, o Python "aperta Enter" depois de cada print. Você pode trocar isso por um espaço, uma vírgula ou por nada.
Hello World Hello World Loading...Done!
apple banana cherry date
Como combinar sep e end?
Você pode usar sep e end na mesma chamada de print(). Assim você tem controle total sobre o que vai entre os valores e o que vem no final de tudo.
A -> B -> C [DONE] Step 1 > Step 2 > Step 3 All steps complete!
Como criar saídas alinhadas e formatadas?
Programas de verdade precisam de uma saída legível. Tabelas, recibos e relatórios precisam de colunas bem alinhadas. O Python oferece várias formas de fazer isso.
O jeito mais direto usa os métodos de string .ljust(), .rjust() e .center(). Eles completam a string com espaços até atingir a largura desejada.
Item Price ------------------------ Coffee $4.50 Sandwich $8.99 Cookie $2.75
Para ter mais controle, use f-strings com especificadores de formato. Dentro das chaves, você pode definir a largura e o alinhamento de cada valor.
Name Score ------------------------ Alice 95 Bob 87 Charlie 92
1 2 3 -------------- 1 | 1 2 3 2 | 2 4 6 3 | 3 6 9
Como funciona a função input() em Python?
A saída é só metade da história. A maioria dos programas também precisa receber informações do usuário. Em Python, a função input() pausa o programa e espera o usuário digitar alguma coisa.
Pense no input() como um campo de formulário em um site. O programa mostra uma pergunta, o usuário digita a resposta e o programa guarda essa resposta em uma variável.
Clique em Executar: o programa para no input() e fica esperando. Digite o seu nome, aperte Enter, e ele continua com a sua resposta guardada em name.
A função input() sempre retorna uma string, mesmo que o usuário digite um número. Esse é um detalhe importante que pega muitos iniciantes de surpresa. Execute este código e digite um número:
Como converter a entrada do usuário em números?
Como o input() sempre retorna uma string, você precisa convertê-la quando espera um número. Envolva o input() com int() para números inteiros ou com float() para números decimais.
Quais são os padrões de saída mais comuns em programas Python?
Programas profissionais usam padrões de saída reconhecíveis. Menus, cabeçalhos, recibos e indicadores de progresso seguem formatos previsíveis. Aprender esses padrões dá aos seus programas um acabamento caprichado.
==============================
RESTAURANT MENU
==============================
1. Burger $8.99
2. Pizza $12.50
3. Salad $7.25
=======================================Sales Report========= Product Units Revenue ------------------------------ Widgets 150 1500.00 Gadgets 89 2670.00 Gizmos 234 4680.00 ------------------------------ Total 8850.00
Exercícios práticos
Hora de praticar! Estes exercícios focam na formatação com print(). Tente resolver cada um antes de olhar as dicas.
Exiba as palavras "red", "green" e "blue" separadas por - (espaço, hífen, espaço) usando o parâmetro sep do print().
Saída esperada:
red - green - blueUse uma única chamada de print() com o parâmetro sep.
Use um laço for para exibir os números de 1 a 5 na mesma linha, separados por espaços. Adicione um print() vazio no final para terminar a linha.
Saída esperada:
1 2 3 4 5Use o parâmetro end dentro do laço. Cuidado para não deixar um espaço sobrando depois do 5.
Crie uma tabuada para os números de 1 a 3. Cada produto deve ficar alinhado à direita, ocupando 4 caracteres de largura. Exiba uma linha de cabeçalho e uma linha separadora.
Saída esperada:
1 2 3
-----------
1 | 1 2 3
2 | 2 4 6
3 | 3 6 9Use o alinhamento das f-strings ({value:>4}) para alinhar os números à direita em colunas de 4 caracteres.
Crie um recibo formatado com os itens e preços abaixo. Use o alinhamento das f-strings para alinhar os nomes dos itens à esquerda (20 caracteres de largura) e os preços à direita (8 caracteres de largura, 2 casas decimais). Inclua um cabeçalho, separadores e o total.
Itens:
Saída esperada:
============================
TECH STORE
============================
Item Price
----------------------------
Laptop 999.99
Mouse 29.50
Keyboard 74.99
----------------------------
Total 1104.48
============================Resumo: entrada e saída em Python
Uma referência rápida de tudo o que você aprendeu:
| Conceito | Sintaxe | Exemplo |
|---|---|---|
| Exibir vários valores | print(a, b, c) | print("Hi", name) |
| Separador personalizado | sep="..." | print(1, 2, 3, sep="-") resulta em 1-2-3 |
| Final personalizado | end="..." | print("Hi", end=" ") continua na mesma linha |
| Alinhar à esquerda | f"{val:<width}" | f"{name:<20}" |
| Alinhar à direita | f"{val:>width}" | f"{price:>8.2f}" |
| Centralizar | f"{val:^width}" | f"{title:^30}" |
| Entrada do usuário | input("prompt") | name = input("Name: ") |
| Converter a entrada | int(input()) | age = int(input("Age: ")) |
O mais importante: o print() vai muito além de exibir texto. Com sep, end e a formatação das f-strings, você cria uma saída limpa e profissional, e o input() sempre entrega uma string, que você converte quando precisar.
O que vem a seguir?
Agora que você sabe criar saídas caprichadas, está pronto para controlar o fluxo dos seus programas. Nos próximos tutoriais, você vai aprender sobre condicionais (if) e laços: as ferramentas que permitem que seus programas tomem decisões e repitam ações.