Hoje é dia de mergulhar nos tipos primitivos do Python, entender como o programa lida com entradas do usuário e aprender a converter valores corretamente.
Isso é essencial para qualquer sistema interativo, e você já começou muito bem! 🐍
🎯 Objetivos do Dia
- Entender os tipos básicos de dados em Python
- Manipular entradas do usuário com
input()
- Fazer conversões de tipo com segurança (
int
,float
, etc.) - Praticar com um mini projeto real: Calculadora de IMC
🔤 Tipos de Dados em Python
Em Python, você não precisa declarar o tipo da variável. O interpretador detecta automaticamente com base no valor atribuído:
nome = "Asllan" # str
idade = 41 # int
peso = 82.5 # float
ativo = True # bool
🧪 Descobrindo o tipo da variável
Você pode usar a função type()
para verificar o tipo:
print(type(nome)) # <class 'str'>
print(type(idade)) # <class 'int'>
📥 Entrada de Dados com input()
Toda entrada capturada com input()
é do tipo str
(string), mesmo que o usuário digite um número:
altura = input("Digite sua altura: ") # str
🔄 Convertendo Tipos (Casting)
Para realizar cálculos, é necessário converter os valores:
altura = float(input("Digite sua altura: "))
idade = int(input("Digite sua idade: "))
💡 Dica: tratando vírgula no número
Usuários brasileiros tendem a digitar com vírgula (1,75
), mas o Python espera ponto (1.75
). Solução:
altura = float(input("Altura: ").replace(",", "."))
Isso evita erros como:
ValueError: could not convert string to float: '1,75'
📌 Desafio Prático do Dia: Calculadora de IMC
Vamos aplicar tudo isso em um mini projeto!
🧮 Fórmula:

📜 Código:
nome = input("Digite seu nome: ")
peso = float(input("Digite peso (kg): ").replace(",", "."))
altura = float(input("Digite sua altura (m): ").replace(",", "."))
imc = peso / (altura ** 2)
print(f"Olá, {nome}! Seu IMC é: {round(imc, 2)}")
🎯 Upgrade opcional: Classificação de IMC
Quer deixar o programa mais completo? Adicione categorias baseadas no resultado:
if imc < 18.5:
status = "Abaixo do peso"
elif imc < 25:
status = "Peso ideal"
elif imc < 30:
status = "Sobrepeso"
else:
status = "Obesidade"
print(f"{nome}, seu IMC é {round(imc, 2)}. Classificação: {status}")
🧠 Conclusão
Hoje você aprendeu:
- A lidar com tipos de dados
- A converter entradas do usuário
- A aplicar tudo em um mini projeto de verdade!
Isso é Python no dia a dia, e a base para todo tipo de automação, robô ou inteligência artificial.