Bird
Raised Fist0
Pythonprogramming~20 mins

Length and iteration methods in Python - Practice Problems & Coding Challenges

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
Challenge - 5 Problems
🎖️
Length and Iteration Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
Predict Output
intermediate
2:00remaining
Output of length and iteration over a nested list
What is the output of this Python code?
Python
nested = [[1, 2], [3, 4, 5], []]
count = 0
for sublist in nested:
    count += len(sublist)
print(count)
ATypeError
B3
C0
D5
Attempts:
2 left
💡 Hint
Count the total number of elements inside all sublists.
Predict Output
intermediate
2:00remaining
Length of a dictionary after iteration
What is the output of this code snippet?
Python
d = {'a': 1, 'b': 2, 'c': 3}
for key in d:
    d[key] += 1
print(len(d))
A3
B6
CTypeError
DKeyError
Attempts:
2 left
💡 Hint
Length of a dictionary counts keys, not values.
Predict Output
advanced
2:00remaining
Output of iteration with modification inside loop
What is the output of this code?
Python
lst = [1, 2, 3, 4]
for i in lst:
    lst.remove(i)
print(lst)
A[1, 3]
B[2, 4]
C[3, 4]
DRuntimeError
Attempts:
2 left
💡 Hint
Removing items while iterating changes the list length and indices.
Predict Output
advanced
2:00remaining
Length and iteration over a generator expression
What happens when you run this code?
Python
gen = (x for x in range(5))
print(len(gen))
A0
B5
CTypeError
DAttributeError
Attempts:
2 left
💡 Hint
Generators do not support len() because they produce items on the fly.
Predict Output
expert
3:00remaining
Final value after complex iteration and length checks
What is the value of variable 'result' after running this code?
Python
data = ['a', 'bb', 'ccc', 'dddd']
result = 0
for item in data:
    if len(item) % 2 == 0:
        result += len(item)
    else:
        result -= 1
print(result)
A4
B6
C-2
D5
Attempts:
2 left
💡 Hint
Add lengths of even-length strings, subtract 1 for odd-length strings.

Practice

(1/5)
1. What does the len() function do when used on a list in Python?
easy
A. It returns the number of items in the list.
B. It returns the last item in the list.
C. It adds all the items in the list.
D. It removes the first item from the list.

Solution

  1. Step 1: Understand the purpose of len()

    The len() function counts how many items are inside a collection like a list.
  2. Step 2: Apply to a list

    When used on a list, it returns the total number of elements present in that list.
  3. Final Answer:

    It returns the number of items in the list. -> Option A
  4. Quick Check:

    len(list) = number of items [OK]
Hint: Remember: len() counts items, it doesn't change them. [OK]
Common Mistakes:
  • Thinking len() returns the last item
  • Confusing len() with sum()
  • Assuming len() removes items
2. Which of the following is the correct syntax to loop through all items in a list named fruits?
easy
A. for fruit in fruits:
B. for fruits in fruit:
C. loop fruit in fruits:
D. foreach fruit in fruits:

Solution

  1. Step 1: Identify correct for-loop syntax in Python

    Python uses for variable in collection: to loop through items.
  2. Step 2: Match variable and collection names

    The variable should be singular (fruit) and collection plural (fruits) for clarity and correctness.
  3. Final Answer:

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

    for item in list: is correct syntax [OK]
Hint: Use 'for item in collection:' to loop in Python. [OK]
Common Mistakes:
  • Swapping variable and collection names
  • Using 'foreach' which is not Python syntax
  • Writing 'loop' instead of 'for'
3. What will be the output of this code?
items = ['a', 'b', 'c']
count = 0
for item in items:
    count += 1
print(count)
medium
A. 0
B. 3
C. ['a', 'b', 'c']
D. Error

Solution

  1. Step 1: Understand the loop iteration

    The loop goes through each item in the list items, which has 3 elements.
  2. Step 2: Track the count variable

    Each time the loop runs, count increases by 1. After 3 iterations, count becomes 3.
  3. Final Answer:

    3 -> Option B
  4. Quick Check:

    Loop runs 3 times, count = 3 [OK]
Hint: Count increments once per item; total equals list length. [OK]
Common Mistakes:
  • Thinking count stays 0
  • Confusing count with list itself
  • Expecting a list output instead of a number
4. Find the error in this code snippet:
numbers = [1, 2, 3]
for i in numbers
    print(i)
medium
A. print() cannot be used inside a for loop.
B. Variable 'i' should be 'numbers'.
C. List 'numbers' should be a tuple.
D. Missing colon ':' after the for loop statement.

Solution

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

    Python requires a colon ':' at the end of the for loop line to start the block.
  2. Step 2: Identify the missing colon

    The code line for i in numbers is missing the colon, causing a syntax error.
  3. Final Answer:

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

    for loop line must end with ':' [OK]
Hint: Always put ':' after for loop header line. [OK]
Common Mistakes:
  • Forgetting the colon ':'
  • Changing variable names unnecessarily
  • Thinking print() can't be inside loops
5. Given a list data = [3, 0, 5, '', None, 7], which code correctly counts only the items that are considered 'truthy' in Python?
hard
A. count = len(data)
B. count = sum(data)
C. count = sum(1 for x in data if x)
D. count = len([x for x in data if x == True])

Solution

  1. Step 1: Understand 'truthy' values in Python

    Truthy values are those that evaluate to True in conditions; 0, '', and None are falsy.
  2. Step 2: Analyze each option

    count = len(data) counts all items, ignoring truthiness. count = sum(1 for x in data if x) sums 1 for each truthy item, correctly counting them. count = sum(data) sums values, not counts. count = len([x for x in data if x == True]) checks for exact True, missing other truthy values.
  3. Final Answer:

    count = sum(1 for x in data if x) -> Option C
  4. Quick Check:

    Sum 1 for truthy items counts them correctly [OK]
Hint: Use sum with condition to count truthy items. [OK]
Common Mistakes:
  • Using len() counts all items, not just truthy
  • Summing values instead of counting
  • Checking equality to True instead of truthiness