Iterating over a list

suggest change

Python supports using a for loop directly on a list:

my_list = ['foo', 'bar', 'baz']
for item in my_list:
    print(item)
# Output: foo
# Output: bar
# Output: baz

You can also get the position of each item at the same time:

for (index, item) in enumerate(my_list):
    print('The item in position {} is: {}'.format(index, item))
 
# Output: The item in position 0 is: foo
# Output: The item in position 1 is: bar
# Output: The item in position 2 is: baz

The other way of iterating a list based on the index value:

for i in range(0,len(my_list)):
    print(my_list[i])
#output:
>>>
foo
bar
baz

Note that changing items in a list while iterating on it may have unexpected results:

for item in my_list:
    if item == 'foo':
        del my_list[0]
    print(item)

# Output: foo
# Output: baz

In this last example, we deleted the first item at the first iteration, but that caused bar to be skipped.

Feedback about page:

Feedback:
Optional: your email if you want me to get back to you:



Table Of Contents