Цикл for с двумя переменными в Python
Проблема заключается в том, что по мере выполнения цикла значение i не увеличивается и, соответственно, в каждой строчке выводится только первая ячейка elements под индексом i = 0.
data = data_extract("source")
elements = data_extract("source")
for element in elements:
i = 0
print(elements.columns[i], data.loc[0, element])
i = i + 1
Подскажите, пожалуйста, как следует изменить цикл, чтобы значение переменной i увеличивалось с каждым выполнением кода цикла!
Ответы (3 шт):
Автор решения: MBo
→ Ссылка
Поставить обнуление i ДО цикла
i = 0
for element in elements:
print(elements.columns[i], data.loc[0, element])
i = i + 1
Автор решения: insolor
→ Ссылка
Можно использовать стандартную функцию enumerate, которая создана как раз для таких случаев, когда нужна переменная с индексом текущего элемента:
for i, element in enumerate(elements):
print(elements.columns[i], data.loc[0, element])
Автор решения: Alexey Trukhanov
→ Ссылка
Не мог не попробовать решить только методами pandas, без for и без i.
elements.columns.map(lambda x: print(x, data.loc[0, x]))