Iterate a list with indexes in Python


Question

I could swear I've seen the function (or method) that takes a list, like this [3, 7, 19] and makes it into iterable list of tuples, like so: [(0,3), (1,7), (2,19)] to use it instead of:

for i in range(len(name_of_list)):
    name_of_list[i] = something

but I can't remember the name and googling "iterate list" gets nothing.

1
192
4/12/2016 10:58:46 AM

Accepted Answer

>>> a = [3,4,5,6]
>>> for i, val in enumerate(a):
...     print i, val
...
0 3
1 4
2 5
3 6
>>>
341
6/18/2012 4:30:03 PM

Yep, that would be the enumerate function! Or more to the point, you need to do:

list(enumerate([3,7,19]))

[(0, 3), (1, 7), (2, 19)]

Licensed under: CC-BY-SA with attribution
Not affiliated with: Stack Overflow
Icon