111 lines
		
	
	
	
		
			1.8 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			111 lines
		
	
	
	
		
			1.8 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
---
 | 
						|
tags: [python]
 | 
						|
---
 | 
						|
 | 
						|
# Loops in Python
 | 
						|
 | 
						|
## For
 | 
						|
 | 
						|
There are three main types of `for` loop in Python and they all use the
 | 
						|
`for...in` clause:
 | 
						|
 | 
						|
1. Traditional `for` loop with range:
 | 
						|
 | 
						|
   ```py
 | 
						|
   for i in range(0, 5):
 | 
						|
       print(i)
 | 
						|
   ```
 | 
						|
 | 
						|
   This is equivalent to the following in JavaScript:
 | 
						|
 | 
						|
   ```js
 | 
						|
   for (let i = 0; i <= 5: i++) {
 | 
						|
       console.log(i)
 | 
						|
   }
 | 
						|
   ```
 | 
						|
 | 
						|
2. `for` loop with iterable:
 | 
						|
 | 
						|
   ```py
 | 
						|
   fruits = ["apple", "banana", "cherry"]
 | 
						|
   for (fruit in fruits):
 | 
						|
       print(fruit)
 | 
						|
   ```
 | 
						|
 | 
						|
3. `for` loop with `enumerate()` function: Iterate over an iterable whilst also
 | 
						|
   keeping track of the index of the current element:
 | 
						|
   ```py
 | 
						|
   for index, fruit in enumerate(fruits):
 | 
						|
       print(f"Index {index}: {fruit}")
 | 
						|
   ```
 | 
						|
 | 
						|
### Loop in increments greater than 1
 | 
						|
 | 
						|
The following loop increments by 2 on each iteration
 | 
						|
 | 
						|
```py
 | 
						|
for i in range(0, 10, 2):
 | 
						|
    print(i, ' ', end='')
 | 
						|
print()
 | 
						|
 | 
						|
# 0  2  4  6  8
 | 
						|
```
 | 
						|
 | 
						|
### Break and continue
 | 
						|
 | 
						|
#### Break
 | 
						|
 | 
						|
```py
 | 
						|
num = int(input('Enter a number from 1-6 to check for: '))
 | 
						|
for i in range(0, 6):
 | 
						|
    if i == num:
 | 
						|
        break
 | 
						|
    print(i, ' ')
 | 
						|
```
 | 
						|
 | 
						|
#### Continue
 | 
						|
 | 
						|
```py
 | 
						|
for i in range(0, 10):
 | 
						|
    print(i, ' ', end='')
 | 
						|
    if i % 2 == 1:
 | 
						|
        continue
 | 
						|
    print('hey its an even number')
 | 
						|
    print('we love even numbers')
 | 
						|
print('Done')
 | 
						|
 | 
						|
"""
 | 
						|
0  hey its an even number
 | 
						|
we love even numbers
 | 
						|
1  2  hey its an even number
 | 
						|
we love even numbers
 | 
						|
3  4  hey its an even number
 | 
						|
we love even numbers
 | 
						|
5  6  hey its an even number
 | 
						|
we love even numbers
 | 
						|
7  8  hey its an even number
 | 
						|
we love even numbers
 | 
						|
9  Done
 | 
						|
"""
 | 
						|
```
 | 
						|
 | 
						|
## While
 | 
						|
 | 
						|
```python
 | 
						|
count = 0
 | 
						|
print('Starting')
 | 
						|
while count < 10:
 | 
						|
    print(count, '', end='')
 | 
						|
    count += 1
 | 
						|
 | 
						|
print()  # not part of the while loop
 | 
						|
print('Done')
 | 
						|
 | 
						|
"""
 | 
						|
Starting
 | 
						|
0 1 2 3 4 5 6 7 8 9
 | 
						|
Done
 | 
						|
"""
 | 
						|
```
 | 
						|
 | 
						|
> There are no `do while` loops in Python
 |