enumerate(): Índice + Valor de Uma Só Vez

Publicado:
Atualizado:
PorJeferson Peter
1 min de leitura
Python
Compartilhe este post:

Se você já programa em Python há algum tempo, provavelmente já viu (ou escreveu) loops usando range(len(...)).
Funciona — mas raramente é a forma mais legível.

É exatamente esse o problema que o enumerate() resolve. Ele permite iterar sobre o índice e o valor ao mesmo tempo, de forma mais clara, segura e idiomática.


Quando o enumerate() realmente faz sentido

O enumerate() é ideal quando:

  • Você precisa do índice e do valor
  • Quer evitar controle manual de índices
  • Se preocupa com legibilidade e intenção

Em vez de pensar em posições, você foca nos dados.


Um padrão comum sem enumerate()

items = ["apple", "banana", "orange"]

for i in range(len(items)):
    print(i, items[i])

Funciona, mas é mais verboso e mais fácil de errar conforme o código cresce.


O mesmo loop com enumerate()

items = ["apple", "banana", "orange"]

for index, value in enumerate(items):
    print(index, value)

Agora a intenção fica explícita:

  • index é a posição
  • value é o elemento

Sem indexação extra, sem esforço mental desnecessário.


Começando o índice em outro valor

Um recurso pouco lembrado é o parâmetro start:

items = ["apple", "banana", "orange"]

for position, value in enumerate(items, start=1):
    print(position, value)

Isso é muito útil em listas exibidas para usuários, relatórios ou logs.


Um erro comum a evitar

Às vezes o enumerate é usado sem necessidade:

# enumerate desnecessário
for i, value in enumerate(items):
    print(value)

Se o índice não é usado, um loop simples é mais claro:

for value in items:
    print(value)

Conclusão

Na minha experiência, o enumerate() é uma dessas pequenas ferramentas do Python que melhoram a qualidade do código sem chamar atenção.

Sempre que você pensar em usar range(len(...)), vale se perguntar: o enumerate() deixaria isso mais claro?

Na maioria das vezes, a resposta é sim.

Compartilhe este post:
enumerate(): Índice + Valor de Uma Só Vez | CodeCraftPython