Атрыманне элементаў і іх індэксаў у Python

З ітэруемага аб'екта можна вывесці не толькі элементы, але і іх індэксы. Для гэтага ўжываецца функцыя enumerate. У яе параметры ўказваем патрэбны ітэруемы аб'ект.

Прыклад

Хай у нас ёсць спіс lst:

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

Давайце выведзем з яго элементы з іх індэксамі. Абазначым пару элемент-індэкс у выглядзе зменнай item, якую будзем шукаць у перададзеным функцыі enumerate аб'екце:

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

Пасля выканання кода выйдуць картэжы з індэкса і элемента:

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

Прыклад

Для таго, каб атрымаць асобна элементы і іх індэксы, можна іх распакаваць праз дзве зменныя key і value:

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

Вынік выканання кода:

python0, 'a'

1, 'b'

2, 'c'

У скарочанай форме індэксы і элементы можна перапісаць адразу ў блоку for:

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

Практычныя задачы

Задание 1

Дадзены спіс:

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

Выведзіце ў кансоль значэнні элементаў і іх індэксы да першага адмоўнага ліку.

Задание 2

Дадзены спіс:

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

Выведзіце ў кансоль значэнні элементаў і іх індэксы:

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

Дадзены спіс:

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

Элементы, якія стаяць на цотных пазіцыях узвядзіце ў квадрат, а няцотных - у куб.