Bird
Raised Fist0
Pythonprogramming~20 mins

Searching and counting elements 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
๐ŸŽ–๏ธ
Master of Searching and Counting
Get all challenges correct to earn this badge!
Test your skills under time pressure!
โ“ Predict Output
intermediate
2:00remaining
Counting occurrences in a list
What is the output of this code that counts how many times the number 3 appears in the list?
Python
numbers = [1, 3, 5, 3, 7, 3, 9]
count_3 = numbers.count(3)
print(count_3)
A4
B2
C3
D1
Attempts:
2 left
๐Ÿ’ก Hint
Use the list method that counts how many times an item appears.
โ“ Predict Output
intermediate
2:00remaining
Finding the index of an element
What will be printed by this code that finds the first position of the string 'apple' in the list?
Python
fruits = ['banana', 'apple', 'orange', 'apple']
index = fruits.index('apple')
print(index)
A0
B1
C3
D2
Attempts:
2 left
๐Ÿ’ก Hint
The index method returns the first position where the item is found.
โ“ Predict Output
advanced
2:00remaining
Counting elements with a condition
What is the output of this code that counts how many numbers in the list are greater than 5?
Python
nums = [2, 7, 4, 9, 5, 8]
count = sum(1 for n in nums if n > 5)
print(count)
A3
B4
C2
D5
Attempts:
2 left
๐Ÿ’ก Hint
Sum 1 for each number that meets the condition n > 5.
โ“ Predict Output
advanced
2:00remaining
Finding the first matching element with next()
What will this code print? It finds the first even number in the list or returns -1 if none found.
Python
numbers = [1, 3, 5, 8, 10]
first_even = next((x for x in numbers if x % 2 == 0), -1)
print(first_even)
A8
B10
C-1
D5
Attempts:
2 left
๐Ÿ’ก Hint
next() returns the first item from the generator that meets the condition.
โ“ Predict Output
expert
2:00remaining
Counting unique elements with a condition
What is the output of this code that counts how many unique words in the list have length greater than 3?
Python
words = ['cat', 'dog', 'elephant', 'dog', 'bird', 'cat', 'elephant']
unique_words = set(words)
count = sum(1 for w in unique_words if len(w) > 3)
print(count)
A1
B3
C4
D2
Attempts:
2 left
๐Ÿ’ก Hint
Convert list to set to get unique words, then count those longer than 3 letters.

Practice

(1/5)
1. Which Python operator checks if an element exists in a list?
easy
A. in
B. count()
C. find()
D. exists()

Solution

  1. Step 1: Understand the purpose of in

    The in operator checks if an element is present in a list or other collection.
  2. Step 2: Compare with other options

    count() counts occurrences, find() and exists() are not valid list operators in Python.
  3. Final Answer:

    in -> Option A
  4. Quick Check:

    Use in to check membership [OK]
Hint: Use in to check presence quickly [OK]
Common Mistakes:
  • Confusing count() with membership check
  • Using non-existent methods like find()
  • Trying to use exists() which is invalid
2. Which of the following is the correct syntax to count how many times the number 5 appears in list nums?
easy
A. count(nums, 5)
B. nums.count(5)
C. nums.count = 5
D. nums.count[5]

Solution

  1. Step 1: Identify the correct method call

    To count occurrences, use the list method count() with the element as argument: nums.count(5).
  2. Step 2: Check syntax of other options

    count(nums, 5) is invalid syntax, nums.count = 5 assigns a value incorrectly, and nums.count[5] is invalid indexing.
  3. Final Answer:

    nums.count(5) -> Option B
  4. Quick Check:

    Use list.count(element) to count [OK]
Hint: Use list.count(value) to count occurrences [OK]
Common Mistakes:
  • Using function call syntax incorrectly
  • Assigning instead of calling method
  • Using square brackets instead of parentheses
3. What is the output of this code?
fruits = ['apple', 'banana', 'apple', 'cherry']
print(fruits.count('apple'))
medium
A. Error
B. 1
C. 3
D. 2

Solution

  1. Step 1: Understand the list contents

    The list fruits contains 'apple' twice, 'banana' once, and 'cherry' once.
  2. Step 2: Apply count() method

    fruits.count('apple') counts how many times 'apple' appears, which is 2.
  3. Final Answer:

    2 -> Option D
  4. Quick Check:

    Counting 'apple' in list = 2 [OK]
Hint: Count returns how many times item appears [OK]
Common Mistakes:
  • Counting unique items instead of occurrences
  • Expecting index instead of count
  • Confusing count with length
4. Find the error in this code that tries to count how many times 10 appears in numbers:
numbers = [10, 20, 10, 30]
count = numbers.count[10]
print(count)
medium
A. Using square brackets instead of parentheses for count method
B. Variable name 'count' is reserved and cannot be used
C. List 'numbers' is not defined
D. Missing import for count function

Solution

  1. Step 1: Identify method call syntax

    Methods in Python are called with parentheses, not square brackets. numbers.count[10] is invalid syntax.
  2. Step 2: Correct the syntax

    It should be numbers.count(10) to count occurrences of 10.
  3. Final Answer:

    Using square brackets instead of parentheses for count method -> Option A
  4. Quick Check:

    Method calls need parentheses, not brackets [OK]
Hint: Use parentheses () to call methods, not brackets [] [OK]
Common Mistakes:
  • Using [] instead of () for method calls
  • Thinking count is a function needing import
  • Assuming variable names are reserved
5. Given a list data = [0, 1, 2, 0, 3, 0, 4], which code snippet counts how many zeros are in the list and prints a message only if zeros exist?
hard
A.
if 0 not in data:
    print(f\"Zeros found: {data.count(0)}\")
B.
print(f\"Zeros found: {data.count(0)}\")
C.
if data.count(0) > 0:
    print(f\"Zeros found: {data.count(0)}\")
D.
if data.contains(0):
    print(f\"Zeros found: {data.count(0)}\")

Solution

  1. Step 1: Understand the goal

    We want to count zeros and print only if there is at least one zero.
  2. Step 2: Analyze each option

    if 0 not in data:
        print(f\"Zeros found: {data.count(0)}\")
    checks if 0 is NOT in data, printing only when NO zeros -- incorrect.
    print(f\"Zeros found: {data.count(0)}\")
    always prints, even if count is zero.
    if data.count(0) > 0:
        print(f\"Zeros found: {data.count(0)}\")
    checks if count > 0 then prints the count. Correct and efficient.
    if data.contains(0):
        print(f\"Zeros found: {data.count(0)}\")
    uses invalid contains().
  3. Step 3: Choose best option

    if data.count(0) > 0:
        print(f\"Zeros found: {data.count(0)}\")
    is correct, checking count once and printing only if zeros exist.
  4. Final Answer:

    if data.count(0) > 0: print(f\"Zeros found: {data.count(0)}\") -> Option C
  5. Quick Check:

    Check count > 0 before printing [OK]
Hint: Check count > 0 to confirm presence before printing [OK]
Common Mistakes:
  • Using invalid method contains()
  • Printing count without checking if zero exists
  • Using not in which prints when zeros are absent