---
title: "Loop-for loop (en)"
description: 8 progressive Python for loop examples, from range() basics to list comprehensions.
url: "https://aaronchan.com/kb/python-for-loop/"
updated: "2026-09-15"
category: "Code-Python (en)"
---

# Loop-for loop (en)

### range(5): counts 0 to 4

 Copy

```
for num in range (5):
    print (num)
```

output:

```
0
1
2
3
4
```

---

### range(1, 5): specify start and end

 Copy

```
for num in range (1,5):
    print (num)
```

output:

```
1
2
3
4
```

---

### range(1, 10, 2): add a step

 Copy

```
for num in range (1,10,2):
    print (num)
```

output:

```
1
3
5
7
9
```

---

### range(5, 1, -1): count backwards

 Copy

```
for num in range (5,1,-1):
    print (num)
```

output:

```
5
4
3
2
```

---

### range(len(list1)): use the list length as the range

 Copy

```
list1 = [2,3,6,9,1]
for num in range (len(list1)):
    print (num)
```

output:

```
0
1
2
3
4
```

---

### Squaring: a for loop vs a one-liner (list comprehension)

 Copy

```
list1 = [1,2,3,4,10]
list2 =[]

for num in list1:
    list2.append(num**2)
print (list2)

list3 = []
list3 = [num**2 for num in list1]
print (list3)
```

output:

```
[1, 4, 9, 16, 100]
[1, 4, 9, 16, 100]
```

---

### Filtering evens: for + if vs a one-liner (list comprehension)

 Copy

```
list1 = [1,2,3,4,10]
list2=[]
for num in list1:
        if (num%2==0):
            list2.append(num)
print (list2)
list3=[]
list3= [num for num in list1 if num%2==0]
print(list3)
```

output:

```
[2, 4, 10]
[2, 4, 10]
```

---

### Conditional transform: for + if/else vs a one-liner (list comprehension)

 Copy

```
list1=[1,2,3,4,10]
list2=[]
for num in list1:
        if (num%2==0):
            list2.append('even')
        else:
            list2.append('odd')
print (list2)
list3=[]
# list3= [num for num in list1 if num%2==0]
list3 = ['even' if num % 2 == 0 else 'odd' for num in list1]
print(list3)
```

output:

```
['odd', 'even', 'odd', 'even', 'even']
['odd', 'even', 'odd', 'even', 'even']
```
