Bird
Raised Fist0
Pythonprogramming~10 mins

Iterating over lists in Python - Interactive Code Practice

Choose your learning style10 modes available

Start learning this pattern below

Jump into concepts and practice - no test required

or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to print each fruit in the list.

Python
fruits = ['apple', 'banana', 'cherry']
for [1] in fruits:
    print([1])
Drag options to blanks, or click blank then click option'
Afruit
Bfruits
Citem
Dlist
Attempts:
3 left
💡 Hint
Common Mistakes
Using the list name instead of a variable for each element.
Using a reserved word like 'list' as a variable.
2fill in blank
medium

Complete the code to sum all numbers in the list.

Python
numbers = [1, 2, 3, 4]
total = 0
for num in numbers:
    total += [1]
print(total)
Drag options to blanks, or click blank then click option'
Anum
Bnumbers
Ctotal
Dnumber
Attempts:
3 left
💡 Hint
Common Mistakes
Adding the whole list instead of one number.
Using a variable that is not defined in the loop.
3fill in blank
hard

Fix the error in the loop to print each character in the word.

Python
word = 'hello'
for [1] in word:
    print(char)
Drag options to blanks, or click blank then click option'
Aword
Bstring
Cletter
Dchar
Attempts:
3 left
💡 Hint
Common Mistakes
Using a different variable name in the loop and print.
Using the whole string as the loop variable.
4fill in blank
hard

Fill both blanks to create a dictionary with words as keys and their lengths as values for words longer than 3 letters.

Python
words = ['cat', 'house', 'tree', 'a', 'dog']
lengths = { [1]: [2]([1]) for [1] in words if len([1]) > 3 }
Drag options to blanks, or click blank then click option'
Aword
Blen
Clength
Dsize
Attempts:
3 left
💡 Hint
Common Mistakes
Using different variable names inconsistently.
Using a non-existent function like length() or size().
5fill in blank
hard

Fill all three blanks to create a dictionary with uppercase words as keys and their lengths as values for words longer than 2 letters.

Python
words = ['hi', 'hello', 'yes', 'no']
result = { [1]: [2] for [3] in words if len([3]) > 2 }
Drag options to blanks, or click blank then click option'
Aword.upper()
Blen(word)
Cword
Dword.lower()
Attempts:
3 left
💡 Hint
Common Mistakes
Mixing variable names in the loop and dictionary.
Using lower() instead of upper() for keys.

Practice

(1/5)
1. What does the following code do?
for item in [1, 2, 3]:
    print(item)
easy
A. Prints the whole list once
B. Prints numbers 1 to 3 without spaces
C. Prints each number 1, 2, and 3 on a new line
D. Causes an error because of the loop

Solution

  1. Step 1: Understand the for loop over a list

    The loop goes through each element in the list [1, 2, 3] one by one.
  2. 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.
  3. Final Answer:

    Prints each number 1, 2, and 3 on a new line -> Option C
  4. Quick Check:

    Loop prints items one by one [OK]
Hint: For loops print each list item separately [OK]
Common Mistakes:
  • Thinking it prints the whole list at once
  • Expecting numbers to print on the same line
  • Confusing loop variable with list itself
2. Which of these is the correct syntax to loop over a list named fruits?
easy
A. for fruit in fruits: print(fruit)
B. for fruits in fruit: print(fruits)
C. loop fruit in fruits: print(fruit)
D. for fruit to fruits: print(fruit)

Solution

  1. Step 1: Identify correct for loop syntax

    The correct Python syntax uses 'for variable in list:' to loop over items.
  2. 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.
  3. Final Answer:

    for fruit in fruits: print(fruit) -> Option A
  4. Quick Check:

    Use 'for item in list:' syntax [OK]
Hint: Remember: for variable in list: [OK]
Common Mistakes:
  • Swapping variable and list names
  • Using wrong keywords like 'loop' or 'to'
  • Missing colon after for statement
3. What is the output of this code?
numbers = [2, 4, 6]
sum = 0
for n in numbers:
    sum += n
print(sum)
medium
A. 12
B. 0
C. 246
D. Error

Solution

  1. Step 1: Understand the loop adding numbers

    The loop adds each number in the list [2, 4, 6] to sum, starting from 0.
  2. Step 2: Calculate the total sum

    sum = 0 + 2 + 4 + 6 = 12
  3. Final Answer:

    12 -> Option A
  4. Quick Check:

    Sum of list items = 12 [OK]
Hint: Add each item inside the loop to get total [OK]
Common Mistakes:
  • Printing sum before loop
  • Concatenating numbers as strings
  • Forgetting to initialize sum to 0
4. Find the error in this code:
items = [10, 20, 30]
for i in items
    print(i)
medium
A. List name is incorrect
B. Wrong variable name in loop
C. Indentation error in print
D. Missing colon after for statement

Solution

  1. Step 1: Check for syntax errors in for loop

    The for loop must end with a colon ':' to be valid syntax.
  2. Step 2: Identify missing colon

    The code misses ':' after 'for i in items', causing a syntax error.
  3. Final Answer:

    Missing colon after for statement -> Option D
  4. Quick Check:

    For loops need ':' at end [OK]
Hint: Always put ':' after for loop header [OK]
Common Mistakes:
  • Forgetting colon after for statement
  • Using wrong variable names
  • Incorrect indentation of print
5. You have a list of lists: data = [[1, 2], [3, 4], [5, 6]]. How do you print all numbers one by one using iteration?
hard
A. print(data[0][0], data[1][1], data[2][2])
B. for sublist in data: for num in sublist: print(num)
C. for i in range(len(data)): print(data[i])
D. for num in data: print(num)

Solution

  1. 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.
  2. 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.
  3. Final Answer:

    for sublist in data: for num in sublist: print(num) -> Option B
  4. Quick Check:

    Nested loops print all inner items [OK]
Hint: Use nested loops for lists inside lists [OK]
Common Mistakes:
  • Trying to print sublists directly
  • Using single loop only
  • Accessing wrong indexes causing errors