enumerate()
при роботі зі списком фактично видається індекс і значення елементів у списку. Наприклад:
l = [1, 2, 3, 4, 5, 6, 7, 8, 9]
for i, j in enumerate(list):
print(i, j)
дає
0 1
1 2
2 3
3 4
4 5
5 6
6 7
7 8
8 9
де перший стовпець позначає індекс товару, а 2-й стовпець позначає самі предмети.
У словнику
enumm = {0: 1, 1: 2, 2: 3, 4: 4, 5: 5, 6: 6, 7: 7}
for i, j in enumerate(enumm):
print(i, j)
це дає результат
0 0
1 1
2 2
3 4
4 5
5 6
6 7
де перший стовпець дає індекс key:value
пар, а другий стовпець позначає keys
словник enumm
.
Отже, якщо ви хочете, щоб перший стовпець був keys
другим, а другий values
- краще спробуйте dict.iteritems()
(Python 2) або dict.items()
(Python 3)
for i, j in enumm.items():
print(i, j)
вихід
0 1
1 2
2 3
4 4
5 5
6 6
7 7
Вуаля
for i, j in enumerate(enumm)
отримуєi
приріст на кожній ітерації іj
ловить звичайний елемент зenumerate
аргументу функції, який у цьому випадку є словником. Ітерація над диктами, по суті, ітерація над її ключами.