Получаване на елементи и техните индекси в Python
От итерируем обект може да се изведат не
само елементи, но и техните индекси. За това
се прилага функцията enumerate. В
нейния параметър посочваме желания итерируем
обект.
Пример
Нека имаме списък lst:
lst = ['a', 'b', 'c']
Нека изведем от него елементите с техните
индекси. Означим двойката елемент-индекс
под формата на променлива item, която
ще търсим в подадения на функцията enumerate
обект:
for item in enumerate(lst):
print(item)
След изпълнение на кода ще се изведат кортежи от индекс и елемент:
(0, 'a')
(1, 'b')
(2, 'c')
Пример
За да получим отделно елементите
и техните индекси, може да ги разопаковаме чрез
две променливи key и value:
for item in enumerate(lst):
key, value = item
print(key)
print(value)
print()
Резултат от изпълнението на кода:
0, 'a'
1, 'b'
2, 'c'
В съкратен вид индексите и елементите
могат да се пренапишат веднага в блока for:
for key, value in enumerate(lst):
print(key)
print(value)
print()
Практически задачи
Даден е списък:
tst = [8, 6, -4, 2, -1]
Изведете в конзолата стойностите на елементите и техните индекси до първото отрицателно число.
Даден е списък:
tst = ['a', 'b', 'c', 'd', 'e']
Изведете в конзолата стойностите на елементите и техните индекси:
'a1'
'b2'
'c3'
'd4'
'e5'
Даден е списък:
tst = [1, 2, 3, 4, 5]
Елементи, стоящи на четни позиции, повдигнете на квадрат, а нечетните - на куб.