Como evitar TypeError: 'int' object is not iterable?

O erro TypeError: 'int' object is not iterable acontece quando tentamos iterar sobre um número inteiro, algo que não é suportado pelo Python.

Como evitar TypeError: 'int' object is not iterable?

O erro TypeError: 'int' object is not iterable ocorre quando tentamos iterar sobre um número inteiro (int), algo que não é permitido pelo Python.

Exemplo do erro

numero = 10
for valor in numero:
    print(valor)

Esse código falhará porque um número inteiro não é uma estrutura iterável como listas ou strings.

Solução 1: Certificar-se de que a variável seja iterável

Se deseja iterar de 0 até um número específico, use range():

for valor in range(10):
    print(valor)

Isso cria uma sequência de números de 0 a 9, tornando possível a iteração.

Solução 2: Converter o número para uma string ou lista

Se quiser tratar um número como uma sequência de caracteres, converta-o para str:

numero = 12345
for digito in str(numero):
    print(digito)

Agora cada dígito do número será tratado individualmente dentro do loop.

No Python, nem todos os tipos de dados podem ser percorridos diretamente em um loop. Entender a diferença entre tipos iteráveis e não iteráveis é essencial para evitar erros como o TypeError: 'int' object is not iterable e garantir que seu código funcione corretamente.

Algumas aplicações:

  • Iteração segura sobre números convertidos em strings.
  • Uso de range() para loops definidos.
  • Conversão de inteiros em listas de caracteres para manipulação.

Dicas para quem está começando

  • Não tente iterar diretamente sobre números inteiros.
  • Use range() ao criar loops com valores numéricos.
  • Se precisar manipular os dígitos de um número, converta-o em string.
  • Verifique o tipo da variável antes de usá-la em um loop.

Contribuições de Pedro Vasconcellos

Compartilhe este tutorial: Como evitar TypeError: 'int' object is not iterable

Compartilhe este tutorial

Continue aprendendo:

O que causa UnicodeDecodeError ao lidar com arquivos e como resolver

O erro UnicodeDecodeError ocorre ao tentar abrir arquivos com uma codificação incorreta, impedindo a leitura correta do conteúdo.

Tutorial anterior

Como corrigir MemoryError ao processar grandes quantidades de dados

O erro MemoryError ocorre no Python quando um programa tenta alocar mais memória do que está disponível no sistema, geralmente ao lidar com grandes volumes de dados.

Próximo tutorial