Мне нужно сделать в Python так же, как:
for (i = 0; i < 5; i++) {cout << i;}
но я не знаю, как использовать FOR в Python, чтобы получить индекс элементов в списке.
Мне нужно сделать в Python так же, как:
for (i = 0; i < 5; i++) {cout << i;}
но я не знаю, как использовать FOR в Python, чтобы получить индекс элементов в списке.
Если у вас есть определенный список и вы хотите перебирать его элементы и индексы, вы можете использовать enumerate()
:
for index, item in enumerate(my_list):
print index, item
Если вам нужны только индексы, вы можете использовать range()
:
for i in range(len(my_list)):
print i
Просто используйте
for i in range(0, 5):
print i
чтобы выполнить итерацию по вашему набору данных и распечатать каждое значение.
Для больших наборов данных вы хотите использовать xrange, который имеет очень похожую подпись, но работает более эффективно для больших наборов данных. http://docs.python.org/library/functions.html#xrange
используйте enumerate:
>>> l = ['a', 'b', 'c', 'd']
>>> for index, val in enumerate(l):
... print "%d: %s" % (index, val)
...
0: a
1: b
2: c
3: d
Если у вас есть существующий список, и вы хотите его перебрать и отслеживать индексы, вы можете использовать функцию enumerate
. Например
l = ["apple", "pear", "banana"]
for i, fruit in enumerate(l):
print "index", i, "is", fruit
Это?
for i in range(0,5):
print(i)
В дополнение к другим ответам - очень часто вам не нужно выполнять итерацию с использованием индекса, но вы можете просто использовать выражение for-each:
my_list = ['a', 'b', 'c']
for item in my_list:
print item
Самый простой способ, которым я собирался, -
i = -1
for step in my_list:
i += 1
print(i)