Entenda como usar enumerate() em Python
A função enumerate() em Python é uma função interna que adiciona um contador a um objeto iterável, como uma lista, tupla ou qualquer outro iterável. Com isso, ela permite iterar sobre um iterável enquanto mantém o controle do índice ou de uma contagem, facilitando o trabalho com sequências e coleções em Python. Para isso, a função enumerate() retorna um objeto enumerate, que é um iterador que produz tuplas contendo o índice e o item correspondente do objeto iterável. Isso é muito útil em situações onde precisamos realizar um loop sobre uma sequência e acessar seu índice e valor simultaneamente.
Entenda como usar enumerate() em Python
Veja a sintaxe básica para saber como usar enumerate() em código:
# sintaxe para usar enumerate
for indice, valor in enumerate(iteravel):
# faz alguma coisa com o índice e valor do iterável
Entenda os elementos desse código:
enumerate(iteravel): parte que usa um objeto iterável (como uma lista) e retorna um objeto enumerate.
for indice, valor in…: loop for itera sobre o objeto enumerate.
indice: variável que mantém o índice atual (posição) dentro do iterável.
valor: variável que contém o valor do elemento no índice atual.
No código abaixo, veja um exemplo concreto de como usar a função enumerate().
lista_de_compra = ["iogurte", "manteiga", "tomate"]
for i, produto in enumerate(lista_de_compra):
print(f"índice: {i}, produto: {produto}")
# resultados:
# índice: 0, produto: iogurte
# índice: 1, produto: manteiga
# índice: 2, produto: tomate
Por padrão, a enumeração do enumerate começa no índice 0. Mas você pode opcionalmente fornecer um segundo argumento para especificar um índice inicial personalizado com a palavra-chave start:
lista_de_compra = ["iogurte", "manteiga", "tomate"]
for i, produto in enumerate(lista_de_compra, start=1):
print(f"índice: {i}, produto: {produto}")
# resultados:
# índice: 1, produto: iogurte
# índice: 2, produto: manteiga
# índice: 3, produto: tomate
Veja também:
Encontrou algum erro ou quer fazer uma sugestão? Por favor, entre em contato usando nosso formulário de contatos.