In this article we will discuss different ways to iterate over a list.

## Iterate over the list using for-in loop

Its easies solution to iterate over the list i.e.

```'''
Iterate over the list using for loop
'''
for word in wordList:
print(word)```

Output
```hi
hello
this
that
is
of```

## Iterate over the list using while loop

• Fist get the size of list
• Then iterate using while loop from 0 to len(list) – 1
• In each iteration access iTh element

```'''
Iterate over the list using while loop
'''
i = 0
sizeofList = len(wordList)
while i < sizeofList :
print(wordList[i])
i += 1```

Output:
```hi
hello
this
that
is
of```

It has an advantage as compared to for-in loop. In each iteration, we know the index too. So, suppose if we want to iterate over the elements at odd number position only. Then with while loop we can do that i.e.
```'''
Iterate over the odd number position elements in list using while loop
'''
i = 0
sizeofList = len(wordList)
while i < sizeofList :
if i % 2 == 1 :
print(wordList[i])
i += 1```

Output:
```hello
that
of```

## Iterate over the list using for loop and range()

```'''
Iterate over the list using for loop and range()
'''
for  i in range(len(wordList)) :
print(wordList[i])
i += 1```

Output:
```hi
hello
this
that
is
of```

## Iterate over the list using List Comprehension

Its a single line solution i.e.

```'''
Iterate over the list using List Comprehension
'''
[print(i) for i in wordList]```

Output

```hi
hello
this
that
is
of```

Complete example is as follows,
```def main():

wordList = ['hi', 'hello', 'this', 'that', 'is', 'of']

'''
Iterate over the list using for loop
'''
for word in wordList:
print(word)

print("*************")

'''
Iterate over the list using while loop
'''
i = 0
sizeofList = len(wordList)
while i < sizeofList :
print(wordList[i])
i += 1

print("*************")

'''
Iterate over the odd number position elements in list using while loop
'''
i = 0
sizeofList = len(wordList)
while i < sizeofList :
if i % 2 == 1 :
print(wordList[i])
i += 1

print("*************")

'''
Iterate over the list using for loop and range()
'''
for  i in range(len(wordList)) :
print(wordList[i])
i += 1

print("*************")

'''
Iterate over the list using List Comprehension
'''
[print(i) for i in wordList]

if __name__ == '__main__':
main()```

Output:
```hi
hello
this
that
is
of
*************
hi
hello
this
that
is
of
*************
hello
that
of
*************
hi
hello
this
that
is
of
*************
hi
hello
this
that
is
of
```