Obtendo elementos e seus índices em Python

De um objeto iterável, você pode extrair não apenas os elementos, mas também seus índices. Para isso, usa-se a função enumerate. Em seu parâmetro, especificamos o objeto iterável desejado.

Exemplo

Suponha que temos uma lista lst:

pythonlst = ['a', 'b', 'c']

Vamos extrair dela os elementos com seus índices. Vamos denotar o par elemento-índice como uma variável item, a qual será procurada no objeto passado para a função enumerate:

pythonfor item in enumerate(lst):
  print(item)

Após a execução do código, serão exibidas tuplas contendo o índice e o elemento:

python(0, 'a')
(1, 'b')
(2, 'c')

Exemplo

Para obter separadamente os elementos e seus índices, você pode desempacotá-los usando duas variáveis key e value:

pythonfor item in enumerate(lst):
  key, value = item
  print(key)
  print(value)
  print()

Resultado da execução do código:

python0, 'a'

1, 'b'

2, 'c'

De forma abreviada, os índices e elementos podem ser reescritos diretamente no bloco for:

pythonfor key, value in enumerate(lst):
  print(key)
  print(value)
  print()

Problemas Práticos

Задание 1

Dada a lista:

pythontst = [8, 6, -4, 2, -1]

Exiba no console os valores dos elementos e seus índices até o primeiro número negativo.

Задание 2

Dada a lista:

pythontst = ['a', 'b', 'c', 'd', 'e']

Exiba no console os valores dos elementos e seus índices:

python'a1'
'b2'
'c3'
'd4'
'e5'
Задание 3

Dada a lista:

pythontst = [1, 2, 3, 4, 5]

Eleve ao quadrado os elementos em posições pares e ao cubo os em posições ímpares.