Entrada de dados
Entrada de dados é responsável por pedir para o usuário qualquer coisa que se possa imaginar. Desde nome, idade, cidade, cpf, número de telefone entre outros. Vamos ver como perguntar ao usuário o seu nome:
Utilizando a função input()
Para pedir algo ao usuário, basta escrever o comando input() e pedir o que quiser dentro dos parênteses. Vamos pedir o nome do usuário:
input('Qual o seu nome? ')
Qual o seu nome? _
Ao executar esse programa, é exibido a mensagem que está dentro do input (Qual o seu nome?). O programa espera você digitar algo e quando teclar enter, nada acontecerá. O nome que você digitou é perdido e não poderá ser acessado, pois não guardamos essa informação na memória RAM do computador... É aí que entram as variáveis! Você pode criar uma variável e atribuir o seu valor como um input! Vamos ver um exemplo:
nome = input("Digite o seu nome: ")
Digite o seu nome: _
Ao executar o programa, pede para o usuário digitar o seu nome, então você digita, e... ainda não aparece nada, que estranho! Isso acontece pois esquecemos de utilizar o print()! Sempre que você quer mostrar algo, lembre-se do print()! Então o código ficaria assim:
nome = input('Digite o seu nome: ')
print(nome)
Digite o seu nome: João João
Pedindo a idade do usuário
idade = input('Digite a sua idade: ')
print(idade)
Digite a sua idade: 25 25
Ok, conseguimos imprimir agora a idade do usuário. Mas tem uma pequena coisa errada na variável idade. Como você sabe, o input() pergunta algo ao usuário. Porém essa pergunta é feita e retornada um tipo de dado string, e nós estamos perguntando a idade, ou seja, é do tipo int (inteiro). Quando você responde a variável idade, sempre retornará uma string '25' e não um número inteiro 25. Isso é muito ruim pois não permite realizar cálculos matemáticos. Vamos ver um exemplo:
idade = input('Digite a sua idade: ')
ano = 2025
print(ano - idade) # Isso causará um erro!
Erro, não é possível fazer cálculos com strings e inteiros
Se o usuário digitasse que sua idade é 10, então ele nasceu em 2015 pelo cálculo. Mas há um grande problema, pois isso resultará em um erro, porque esquecemos de um pequeno detalhe. Como eu disse, o comando input() SEMPRE RETORNARÁ uma string. É aí que está o problema. Quando o programa executa aquele código, o programa se pergunta: "Mas como eu vou subtrair 2025 de um texto?". Não é possível fazer cálculos utilizando um inteiro e uma string. Mas é possível resolver isso utilizando o int() antes do input para indicar que isso precisa retornar um inteiro. Vamos ver como fica:
idade = int(input('Digite a sua idade: '))
ano = 2025
print(ano - idade)
Digite a sua idade: 10 2015
Exemplo com saldo bancário
Vamos ver mais um exemplo:
saldo = input('Digite o seu saldo: ')
aposentadoria = 2400
print(saldo + aposentadoria) # Isso causará erro!
Erro
Consegue perceber se tem algum erro neste código? Analise bem! Esquecemos de utilizar o int antes do input. Vamos ajustar o código novamente:
saldo = int(input('Digite o seu saldo: '))
aposentadoria = 2400
print(saldo + aposentadoria)
Digite o seu saldo: 1000 3400
Usando float para números decimais
Também é possível utilizar o float, aquele tipo de dado que possui casas decimais, se lembra? Um exemplo que pede ao usuário seu peso:
peso = float(input("Olá, você pesa quantos quilos? "))
print(peso)
Olá, você pesa quantos quilos? 68.5 68.5
Fazendo uma calculadora de soma
Agora vamos fazer um pequeno projetinho de uma calculadora que apenas soma. Será assim: pede para o usuário digitar dois números, e o programa retorna a soma entre eles. Vamos ver:
num1 = int(input('Digite o primeiro número: '))
num2 = int(input('Digite o segundo número: '))
soma = num1 + num2
print(soma)
Digite o primeiro número: 5 Digite o segundo número: 7 12
Imprimindo de um jeito diferente
Você percebeu que imprimimos as coisas, mas não especificamos o que é aquela mensagem? Exemplo: Você pede ao usuário seu nome, e você só imprime na tela o nome do usuário. Parece um pouco sem graça, então que tal criar mensagens personalizadas para as mensagens que são impressas? Vamos ver como funciona:
Concatenação
A concatenação mescla dois valores utilizando o operador de adição (+). Vamos supor que você tenha que pedir o nome do usuário e o seu sobrenome, e no final, você junta tudo e mostra seu nome completo:
nome = input("Digite o seu primeiro nome: ")
sobrenome = input("Digite o seu sobrenome: ")
nome_completo = nome + sobrenome
print(nome_completo)
Digite o seu primeiro nome: João Digite o seu sobrenome: Silva JoãoSilva
Ainda há um pequeno probleminha neste código, pois não há espaço. Vamos apenas adicionar um espaço:
nome = input("Digite o seu primeiro nome: ")
sobrenome = input("Digite o seu sobrenome: ")
nome_completo = nome + ' ' + sobrenome
print(nome_completo)
Digite o seu primeiro nome: João Digite o seu sobrenome: Silva João Silva
Não vou detalhar muito sobre esse código, apenas siga em frente e você entenderá.
Ok, isso só imprime o nome completo. Mas vamos supor que queremos enviar uma mensagem do tipo "Seu nome completo é: {e nesse espaço aqui mostre o nome que o usuário digitou}". Isso é totalmente possível e muito fácil. Vamos ver como funciona:
nome = input("Digite o seu primeiro nome: ")
sobrenome = input("Digite o seu sobrenome: ")
nome_completo = nome + ' ' + sobrenome
print('Seu nome completo é ' + nome_completo)
Digite o seu primeiro nome: Lucas Digite o seu sobrenome: dos Santos Seu nome completo é Lucas dos Santos
f-strings (formatação de strings)
Que legal, não é? Mas ainda há um jeito que facilita a concatenção! Essa forma se chama f-string, que consiste em utilizar um f antes das aspas e as chaves para o nome de variáveis. Vamos ver como é:
cidade = input('Qual a sua cidade? ')
print(f'Você mora em {cidade}')
Qual a sua cidade? São Paulo Você mora em São Paulo
Uau, fácil, não acha? Apenas utilizamos um f antes das aspas, seguido pela mensagem que queremos e em seguida utilizamos chaves e a variável dentro das chaves. Mais simples que a concatenação! Vamos ver outro exemplo:
amigos = int(input('Quantos amigos você tem? ')) # Não esqueça do int!!
print(f'Uau! Você tem {amigos} amigos')
Quantos amigos você tem? 16 Uau! Você tem 16 amigos