We use iteration to look at each item in a list one by one. This helps us do something with every item easily.
Iterating over lists in Python
Start learning this pattern below
Jump into concepts and practice - no test required
my_list = ['item1', 'item2', 'item3'] for item in my_list: # do something with item
The for loop goes through each item in the list one by one.
Indentation (spaces before the code inside the loop) is important in Python.
fruits = ['apple', 'banana', 'cherry'] for fruit in fruits: print(fruit)
numbers = [] for number in numbers: print(number)
single_item_list = ['only'] for item in single_item_list: print(item)
colors = ['red', 'green', 'blue'] for color in colors: if color == 'green': print('Found green!')
This program defines a function to print all items in a list with a dash before each. Then it calls the function with a shopping list.
def print_list_items(items): print('List has', len(items), 'items:') for item in items: print('-', item) shopping_list = ['milk', 'eggs', 'bread'] print_list_items(shopping_list)
Time complexity is O(n) because it looks at each item once.
Space complexity is O(1) if you only print or use items one by one.
Common mistake: forgetting to indent the code inside the loop, which causes errors.
Use iteration when you want to do something with every item. Use list comprehensions if you want to create a new list quickly.
Iteration lets you visit each item in a list one at a time.
Use a for loop with a list to do this simply.
Works with empty lists and lists of any size.
Practice
for item in [1, 2, 3]:
print(item)Solution
Step 1: Understand the for loop over a list
The loop goes through each element in the list [1, 2, 3] one by one.Step 2: Print each element during iteration
Each element (1, then 2, then 3) is printed on its own line because of the print statement.Final Answer:
Prints each number 1, 2, and 3 on a new line -> Option CQuick Check:
Loop prints items one by one [OK]
- Thinking it prints the whole list at once
- Expecting numbers to print on the same line
- Confusing loop variable with list itself
fruits?Solution
Step 1: Identify correct for loop syntax
The correct Python syntax uses 'for variable in list:' to loop over items.Step 2: Check each option
for fruit in fruits: print(fruit) uses 'for fruit in fruits:', which is correct. Others use invalid keywords or reversed names.Final Answer:
for fruit in fruits: print(fruit) -> Option AQuick Check:
Use 'for item in list:' syntax [OK]
- Swapping variable and list names
- Using wrong keywords like 'loop' or 'to'
- Missing colon after for statement
numbers = [2, 4, 6]
sum = 0
for n in numbers:
sum += n
print(sum)Solution
Step 1: Understand the loop adding numbers
The loop adds each number in the list [2, 4, 6] to sum, starting from 0.Step 2: Calculate the total sum
sum = 0 + 2 + 4 + 6 = 12Final Answer:
12 -> Option AQuick Check:
Sum of list items = 12 [OK]
- Printing sum before loop
- Concatenating numbers as strings
- Forgetting to initialize sum to 0
items = [10, 20, 30]
for i in items
print(i)Solution
Step 1: Check for syntax errors in for loop
The for loop must end with a colon ':' to be valid syntax.Step 2: Identify missing colon
The code misses ':' after 'for i in items', causing a syntax error.Final Answer:
Missing colon after for statement -> Option DQuick Check:
For loops need ':' at end [OK]
- Forgetting colon after for statement
- Using wrong variable names
- Incorrect indentation of print
data = [[1, 2], [3, 4], [5, 6]]. How do you print all numbers one by one using iteration?Solution
Step 1: Understand nested lists and iteration
Each item in data is a list itself, so we need two loops: one for each sublist, one for numbers inside.Step 2: Use nested for loops to access all numbers
The outer loop goes through each sublist, the inner loop prints each number inside that sublist.Final Answer:
for sublist in data: for num in sublist: print(num) -> Option BQuick Check:
Nested loops print all inner items [OK]
- Trying to print sublists directly
- Using single loop only
- Accessing wrong indexes causing errors
