Módulo 4 - Variáveis e tipos de dados
Números inteiros com int: contas sem vírgula
9 min de leitura · por Cesar Gargiulo, revisado pela equipe ValorFinal e GuardiaSec · Atualizado em 01/07/2026
O que você vai aprender
- Identificar quando um valor é do tipo int: número sem ponto decimal.
- Fazer as operações básicas com inteiros e usar números negativos.
- Escrever números grandes legíveis com o underline, como 1_000_000.
- Saber que o int do Python cresce sem limite prático, ao contrário de outras linguagens.
Ouvir o resumo desta aula
Um recap de cerca de 2 minutos na voz do Valim, para ouvir no trânsito ou na academia.
Ler a transcrição do resumo
Resumo da aula: Números inteiros com int: contas sem vírgula.
Os objetivos desta aula. Identificar quando um valor é do tipo int: número sem ponto decimal. Fazer as operações básicas com inteiros e usar números negativos. Escrever números grandes legíveis com o underline, como 1_000_000. Saber que o int do Python cresce sem limite prático, ao contrário de outras linguagens.
Veja o essencial, parte por parte.
O que é um int e como ele opera. int é o tipo dos números SEM parte decimal: 7, 0, -32, 2026. Sem aspas e sem ponto.
Números grandes que dá para ler. Valores de dinheiro em centavos: preco_em_centavos = 1_599_90 não; 159_990 sim, um valor de R$ 1.599,90 guardado em centavos.
O inteiro que não estoura. Aqui vai uma vantagem do Python que passa despercebida por quem nunca usou outra linguagem.
Esse foi o resumo do essencial. Para se aprofundar, leia a aula completa e responda os exercícios.
O que é um int e como ele opera
Depois do texto, o número. O tipo int, de integer, inteiro em inglês, guarda números sem parte decimal: a sua idade, o ano atual, a quantidade de itens num carrinho, os pontos numa partida. A escrita não podia ser mais direta: o número puro, sem aspas e sem ponto. As aspas transformariam o número em texto, como você viu na aula passada com o caso do "2" + "2", e o ponto o transformaria em outro tipo, o float, assunto da próxima aula.
idade = 25
ano_nascimento = 2026 - idade
print(ano_nascimento)
estoque = 100
vendidos = 37
print(estoque - vendidos)
print(vendidos * 2)
# Saída:
# 2001
# 63
# 74Inteiros em ação: subtração, multiplicação e o resultado usado direto no print.
As quatro operações usam os símbolos que o teclado oferece: + para soma, - para subtração, * para multiplicação e / para divisão. Um detalhe do Python 3 que vale registrar desde já: a divisão com / sempre devolve um float, mesmo quando a conta é exata. 10 / 2 dá 5.0, com ponto, e não 5. Existe uma divisão que devolve inteiro, a divisão inteira com //, e ela tem aula dedicada no módulo 6, junto com o resto da divisão. Por enquanto, guarde o comportamento da barra.
Números negativos funcionam sem cerimônia: basta o sinal de menos na frente, como em saldo = -50. Eles participam das operações normalmente, e o Python respeita as regras de sinal da matemática. Um termômetro que marca -3, uma conta bancária no vermelho, um placar de golfe: tudo isso é int negativo.
Números grandes que dá para ler
Tente bater o olho em 78000000000 e dizer quanto é. Setecentos e oitenta milhões? Setenta e oito bilhões? Contar zeros na tela é convite ao erro, e erro de zero em programa que lida com dinheiro custa caro. O Python resolve com uma gentileza de sintaxe: dentro de um número, o underline funciona como separador visual. Você escreve 78_000_000_000 e a leitura fica imediata: setenta e oito bilhões. Para a máquina, o underline não existe; o valor é idêntico.
populacao_brasil = 212_000_000
um_bilhao = 1_000_000_000
print(populacao_brasil)
print(1_000_000 == 1000000)
# Saída:
# 212000000
# TrueO underline é só para os seus olhos: na saída o número aparece puro, e os dois jeitos de escrever são o mesmo valor.
Repare na saída: o print mostra o número sem os underlines, porque eles pertencem ao código fonte, não ao valor. E a comparação da última linha, que devolve True, antecipa o tipo bool que você verá daqui a duas aulas. Uma armadilha para evitar: não use ponto para separar milhares, como se escreve em português. Em Python, 1.000 não é mil; é o número decimal um, com três casas. Essa pegadinha da notação brasileira volta com força na aula de float.
O inteiro que não estoura
Aqui vai uma vantagem do Python que passa despercebida por quem nunca usou outra linguagem. Em C, Java e na maioria das linguagens tradicionais, o inteiro comum tem um teto: passa de 2.147.483.647 e o valor estoura, dando errado de formas silenciosas e traiçoeiras. Em Python, o int cresce até onde a memória do computador aguentar. Você pode calcular números com centenas de dígitos e a linguagem simplesmente entrega o resultado.
grande = 2 ** 100
print(grande)
# Saída:
# 1267650600228229401496703205376Dois elevado a cem: um número de 31 dígitos, calculado sem configuração e sem estouro. O ** é a potência, que o módulo 6 detalha.
Isso não é truque de laboratório. Cálculos de juros compostos em prazos longos, criptografia e contagens de combinações produzem números gigantes com facilidade, e o int ilimitado do Python evita uma classe inteira de bugs. Para os programas deste curso, a consequência prática é a tranquilidade: você nunca vai precisar se perguntar se o seu inteiro cabe. Ele cabe.
Recapitulando a aula: int é número sem ponto e sem aspas, opera com + - * /, aceita negativos, ganha legibilidade com underline e não tem teto prático. Falta a outra metade dos números: os que carregam parte decimal. A próxima aula apresenta o float e a pegadinha do ponto contra a vírgula.
Teste rápido
O que o Python faz com o underline em populacao = 212_000_000?
Perguntas frequentes
- Qual a diferença entre 7 e "7" em Python?
- 7 sem aspas é um int, um número que faz contas: 7 + 1 dá 8. "7" com aspas é uma string, um texto que por acaso mostra um algarismo: "7" + "1" concatena e dá "71". Misturar os dois numa soma gera TypeError, e a aula de type() deste módulo mostra como converter de um para o outro.
- Por que 10 / 2 dá 5.0 e não 5?
- Porque no Python 3 a divisão com / sempre devolve um float, mesmo quando o resultado é exato. É uma decisão de consistência da linguagem: o mesmo operador devolve sempre o mesmo tipo. Quando você quiser resultado inteiro, existe a divisão inteira com //, apresentada no módulo 6.
- Posso escrever 1.000 para dizer mil?
- Não. Em Python, o ponto é o separador DECIMAL, então 1.000 é o número um com três casas decimais, do tipo float. Para escrever mil, use 1000 ou, se quiser legibilidade, 1_000 com underline. A notação brasileira de milhar com ponto não existe na linguagem.
- O int do Python tem mesmo tamanho ilimitado?
- O limite é a memória disponível no computador, o que para qualquer uso deste curso significa ilimitado na prática. Números com milhares de dígitos são calculados normalmente. Em linguagens como C e Java, o inteiro padrão estoura em torno de 2 bilhões; o Python trata o crescimento sozinho.
- Como escrevo um número negativo numa variável?
- Com o sinal de menos direto na frente do número: temperatura = -3 ou saldo = -1_250. O negativo participa de todas as operações seguindo as regras de sinal da matemática: -3 + 5 dá 2, e -2 * -2 dá 4.
- Contas com int podem dar resultado errado por arredondamento?
- Não. Soma, subtração e multiplicação entre ints são exatas, sem arredondamento, não importa o tamanho dos números. Imprecisão de arredondamento é assunto do float, o tipo decimal da próxima aula. Por isso sistemas financeiros gostam de guardar dinheiro em centavos inteiros.
Fontes
Seu progresso fica salvo neste aparelho. Assinantes sincronizam entre os aparelhos.