Valores e literais
Objetivo da aula
Reconhecer literais como formas de escrever valores diretamente no código.
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
Um programa trabalha com valores. Um valor pode ser um número, um texto, um “sim/não” lógico ou até uma marcação de ausência. Quando escrevemos um valor diretamente no código, essa forma escrita é chamada de literal. O tipo do valor diz ao Python quais operações fazem sentido.
Uma imagem mental para entender
Pense em etiquetas de peças de brinquedo. Duas peças podem ter “20” escrito nelas, mas uma pode representar 20 reais e outra a palavra “20” em uma placa. Visualmente parecem parecidas, mas permitem usos diferentes. Em Python, 20 e "20" também são valores diferentes.
Conceitos essenciais, sem pular etapas
Literal
É uma forma de escrever um valor diretamente no código: 42, 3.5, "Ana", True e None são exemplos.
Tipo
O tipo classifica o valor e participa das regras de operação. 2 + 3 soma números; "2" + "3" junta textos e produz "23".
Contexto
O número 20, sozinho, não diz se é idade, quantidade ou temperatura. O programa fornece contexto por nomes, estruturas e regras.
type()
A função type() permite observar o tipo de um valor durante os experimentos. É uma ferramenta de aprendizagem muito útil neste módulo.
Modelo mental
LITERAL → VALOR → TIPO → OPERAÇÕES PERMITIDAS → SIGNIFICADO NO CONTEXTO
Exemplo 1 — primeiro veja o programa inteiro
idade = 20
altura = 1.75
ativo = True
nome = "Ana"
sem_valor = None
print(type(idade))
print(type(altura))
print(type(ativo))
print(type(nome))
print(type(sem_valor))
Agora vamos ler linha por linha
20é um literal inteiro e produz um valor do tipoint.1.75é um literal de ponto flutuante, tipofloat.Trueé um valor booleano, tipobool."Ana"é texto, tipostr.Nonerepresenta ausência de um valor comum naquele ponto e tem tipo próprio,NoneType.
Saída esperada
<class 'int'>
<class 'float'>
<class 'bool'>
<class 'str'>
<class 'NoneType'>
Exemplo 2 — o mesmo conceito em outra situação
numero = 20
texto = "20"
print(numero + 5)
print(texto + "5")
O primeiro + soma números; o segundo concatena textos. O símbolo é o mesmo, mas a operação depende dos tipos envolvidos.
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.
- Troque
20por"20"e observe comotype()muda. - Crie um valor de cada tipo básico apresentado e mostre tipo e valor.
- Tente explicar por que
Truenão é a mesma coisa que o texto"True". - Liste três significados possíveis para o número 30 e use nomes de variáveis que tornem cada significado claro.
Mini desafio
Crie variáveis para nome de um livro, quantidade de páginas, preço, disponibilidade e uma observação ainda ausente. Mostre o valor e o tipo de cada uma.
Solução comentada
titulo = "Guia de Programação"
paginas = 180
preco = 39.90
disponivel = True
observacao = None
print(titulo, type(titulo))
print(paginas, type(paginas))
print(preco, type(preco))
print(disponivel, type(disponivel))
print(observacao, type(observacao))
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
- Confundir
"25"com25. Um é texto; o outro é número inteiro. - Pensar que o tipo existe apenas para exibição. Ele influencia operações e comportamento.
- Usar
Nonecomo se fosse zero ou texto vazio. São valores conceitualmente diferentes.
Cheque se você realmente entendeu
Qual é a diferença entre 7 e "7"?
Resposta: O primeiro é um int; o segundo é uma str.
O que type() ajuda a descobrir?
Resposta: O tipo do valor observado.
O valor 20 informa sozinho que significa idade?
Resposta: Não. O contexto do programa, como o nome idade, dá esse significado.
Resumo em linguagem simples
Nesta aula, o ponto central foi Valores e literais. Tente explicar o modelo LITERAL → VALOR → TIPO → OPERAÇÕES PERMITIDAS → SIGNIFICADO NO CONTEXTO 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, Variáveis e atribuição, 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.