Tipos básicos: int, float, bool, str e None

Usar conscientemente os tipos básicos mais frequentes em programas introdutórios.

Tipos básicos: int, float, bool, str e None

Objetivo da aula

Usar conscientemente os tipos básicos mais frequentes em programas introdutórios.

Regra desta aula: vamos assumir que você nunca viu este assunto antes. Nenhum termo importante será usado sem explicação e todo exemplo deve ser entendido linha por linha, não apenas copiado.

Começando do zero

Os tipos básicos aparecem o tempo inteiro em programas pequenos. int representa inteiros, float representa números com ponto flutuante, bool representa verdadeiro ou falso, str representa texto e None sinaliza ausência de um valor comum. Entender cada papel evita misturas confusas.

Uma imagem mental para entender

Pense em gavetas especializadas: uma guarda números inteiros, outra textos, outra respostas “sim/não”. Você até pode transformar o conteúdo de uma gaveta para caber em outra, mas precisa fazer essa transformação conscientemente. O tipo é parte da informação que o programa usa para decidir como operar sobre um valor.

Conceitos essenciais, sem pular etapas

int

Inteiros como -2, 0, 15 e 1000. São adequados para contagens e valores inteiros quando frações não fazem parte do modelo.

float

Valores de ponto flutuante como 1.5 e 3.14. São aproximações binárias de muitos números decimais; por isso, cálculos financeiros rigorosos podem exigir abordagens específicas além do nível deste curso.

bool

Apenas True ou False. É o tipo central para condições e decisões.

str

Sequência de caracteres usada para texto. Mesmo que contenha dígitos, "123" continua sendo texto até ser convertido.

None

Um valor especial usado para indicar ausência, “ainda não definido” ou “nenhum valor aqui”, dependendo do contrato do programa.

Modelo mental

DADO → TIPO → OPERAÇÕES VÁLIDAS → REGRA DO PROGRAMA

Exemplo 1 — primeiro veja o programa inteiro

quantidade = 3
peso = 2.5
aprovado = False
produto = "Caderno"
observacao = None

print(quantidade, type(quantidade))
print(peso, type(peso))
print(aprovado, type(aprovado))
print(produto, type(produto))
print(observacao, type(observacao))

Agora vamos ler linha por linha

  • Cada variável recebe um valor de tipo diferente.
  • False não precisa de aspas; com aspas seria texto.
  • None também não usa aspas. "None" seria apenas uma palavra.
  • type() deixa visível uma propriedade que normalmente o programa usa sem mostrar ao usuário.

Saída esperada

Os valores aparecem acompanhados de seus respectivos tipos.

Exemplo 2 — o mesmo conceito em outra situação

print(10 + 5)      # soma numérica
print("10" + "5")  # concatenação de texto
print(True and False)

O mesmo operador visual pode ter comportamento diferente conforme os tipos. O terceiro exemplo introduz uma operação lógica: verdadeiro and falso resulta em falso.

Experimento guiado

Não pule esta parte. Programação só começa a fazer sentido quando você prevê um resultado, executa e compara a previsão com o que realmente aconteceu.

  1. Crie exemplos próprios de int, float, bool, str e None.
  2. Teste "10" + "5" e compare com 10 + 5.
  3. Use type() para confirmar o tipo de cada resultado.
  4. Explique por que preço pode ser float, mas quantidade de itens costuma ser int em um modelo simples.

Mini desafio

Crie um pequeno cadastro de filme com título, ano, duração em horas, disponibilidade e avaliação opcional ainda ausente.

Solução comentada

titulo = "Exemplo"
ano = 2026
duracao_horas = 1.75
disponivel = True
avaliacao = None

print(titulo, ano, duracao_horas, disponivel, avaliacao)

Depois de executar a solução, altere pelo menos um valor e explique por que o novo resultado mudou. Se você só copiou e não consegue explicar cada linha, refaça o desafio em uma versão menor.

Erros comuns e por que acontecem

  • Colocar aspas em True ou None e transformar os valores em texto sem perceber.
  • Achar que float representa números decimais com precisão infinita.
  • Usar None quando zero é um valor legítimo e depois confundir “nenhum valor” com “valor zero”.

Cheque se você realmente entendeu

Qual tipo representa "3.5"?

Resposta: str, porque está entre aspas.

Qual tipo representa uma condição satisfeita ou não?

Resposta: bool.

Zero e None significam a mesma coisa?

Resposta: Não. Zero é um número; None representa ausência segundo o contexto.

Resumo em linguagem simples

Nesta aula, o ponto central foi Tipos básicos: int, float, bool, str e None. Tente explicar o modelo DADO → TIPO → OPERAÇÕES VÁLIDAS → REGRA DO PROGRAMA sem olhar a tela. Depois, escreva um exemplo próprio menor que os apresentados. Esse exercício de explicação é parte do aprendizado, não um extra.

Conexão com a próxima aula

Na próxima aula, Conversão entre tipos, vamos aproveitar exatamente o que foi construído aqui. Você não precisa memorizar tudo; precisa conseguir reconhecer o conceito e reconstruí-lo com raciocínio e testes.