range(len(...)) is a common approach to accessing each item in an ordered collection.
The pythonic syntax is much simpler, and is guaranteed to produce elements in the same order:
for i in range(len(my_list)): do_something(my_list[i])
Python has other solutions for cases when the index itself might be needed. To get the element at the same index from two or more lists, use zip. To get both the index and the element at that index, use enumerate.
for item in my_list: do_something(item)