Bird
Raised Fist0
Pythonprogramming~20 mins

Membership operators (in, not in) 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
🎖️
Membership Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
Predict Output
intermediate
2:00remaining
Check membership in a list
What is the output of this code?
Python
fruits = ['apple', 'banana', 'cherry']
result = 'banana' in fruits
print(result)
ATrue
BFalse
CSyntaxError
DNone
Attempts:
2 left
💡 Hint
Remember, 'in' checks if an item exists inside a list.
Predict Output
intermediate
2:00remaining
Check membership in a string
What is the output of this code?
Python
text = 'hello world'
result = 'z' not in text
print(result)
ATrue
BFalse
CTypeError
DSyntaxError
Attempts:
2 left
💡 Hint
The 'not in' operator returns True if the item is not found.
Predict Output
advanced
2:00remaining
Membership check with dictionary keys
What is the output of this code?
Python
data = {'a': 1, 'b': 2, 'c': 3}
result = 'b' in data
print(result)
AFalse
BTrue
CKeyError
DTypeError
Attempts:
2 left
💡 Hint
Membership in a dictionary checks keys, not values.
Predict Output
advanced
2:00remaining
Membership check with a tuple
What is the output of this code?
Python
t = (10, 20, 30, 40)
result = 25 not in t
print(result)
AFalse
BTypeError
CTrue
DSyntaxError
Attempts:
2 left
💡 Hint
The 'not in' operator returns True if the item is not found in the tuple.
🧠 Conceptual
expert
3:00remaining
Understanding membership with nested lists
Given the code below, what is the output?
Python
nested = [[1, 2], [3, 4], [5, 6]]
result = [3, 4] in nested
print(result)
AFalse
BTypeError
CSyntaxError
DTrue
Attempts:
2 left
💡 Hint
Membership checks for the exact item in the list, including nested lists.

Practice

(1/5)
1. What does the in operator do in Python?
easy
A. Creates a new collection
B. Adds a value to a collection
C. Removes a value from a collection
D. Checks if a value exists inside a collection

Solution

  1. Step 1: Understand the purpose of in

    The in operator is used to check if a value is present inside a collection like a list, string, or tuple.
  2. Step 2: Compare with other options

    Options A, B, and C describe actions unrelated to membership checking.
  3. Final Answer:

    Checks if a value exists inside a collection -> Option D
  4. Quick Check:

    in means membership check [OK]
Hint: Remember: in means 'is inside' [OK]
Common Mistakes:
  • Confusing in with adding or removing items
  • Thinking in changes the collection
  • Mixing in with comparison operators
2. Which of the following is the correct syntax to check if the string 'apple' is NOT in the list fruits?
easy
A. if 'apple' not in fruits:
B. if 'apple' not fruits:
C. if not 'apple' fruits:
D. if 'apple' !in fruits:

Solution

  1. Step 1: Recall correct syntax for not in

    The correct syntax to check absence is value not in collection.
  2. Step 2: Evaluate each option

    if 'apple' not in fruits: matches correct syntax. if 'apple' not fruits: misses in. if not 'apple' fruits: misses in. if 'apple' !in fruits: uses invalid operator !in.
  3. Final Answer:

    if 'apple' not in fruits: -> Option A
  4. Quick Check:

    Use not in as two words [OK]
Hint: Use not in as two words, no symbols [OK]
Common Mistakes:
  • Writing !in instead of not in
  • Omitting in after not
  • Using not 'value' in which is valid but less clear
3. What is the output of this code?
letters = ['a', 'b', 'c']
print('d' in letters)
print('a' not in letters)
medium
A. True\nTrue
B. False\nTrue
C. False\nFalse
D. True\nFalse

Solution

  1. Step 1: Check if 'd' is in the list

    'd' is not in ['a', 'b', 'c'], so 'd' in letters is False.
  2. Step 2: Check if 'a' is not in the list

    'a' is in the list, so 'a' not in letters is False, so print('a' not in letters) prints False.
  3. Final Answer:

    False False is incorrect because the second print outputs False, but the first print outputs False, so the correct output is False False which matches False\nFalse.
  4. Quick Check:

    'd' in letters = False, 'a' not in letters = False [OK]
Hint: Check each membership separately [OK]
Common Mistakes:
  • Assuming 'd' is in the list
  • Mixing up in and not in results
  • Confusing True/False outputs
4. Find the error in this code snippet:
items = ['pen', 'pencil', 'eraser']
if 'pen' not items:
    print('Pen is missing')
medium
A. Incorrect print statement syntax
B. Wrong list name
C. Missing in after not
D. No error, code is correct

Solution

  1. Step 1: Check the membership syntax

    The correct syntax for checking absence is value not in collection. The code misses in after not.
  2. Step 2: Verify other parts

    List name and print statement are correct. The only error is missing in.
  3. Final Answer:

    Missing in after not -> Option C
  4. Quick Check:

    Use not in together [OK]
Hint: Always write not in together [OK]
Common Mistakes:
  • Writing not items instead of not in items
  • Forgetting in keyword
  • Assuming not alone checks membership
5. You have a list words = ['cat', 'dog', 'bird']. You want to print all words that are NOT in the string text = 'I have a dog and a cat'. Which code correctly does this?
hard
A. for w in words: if w not in text: print(w)
B. for w in words: if w in text: print(w)
C. for w in words: if not w text: print(w)
D. for w in words: if w not text: print(w)

Solution

  1. Step 1: Understand the goal

    We want to print words from the list that are NOT found inside the string text.
  2. Step 2: Check each option's logic

    for w in words: if w not in text: print(w) uses if w not in text, which correctly checks absence. for w in words: if w in text: print(w) prints words that ARE in text, opposite of goal. for w in words: if not w text: print(w) has syntax error, missing in after w. for w in words: if w not text: print(w) has syntax error missing in.
  3. Final Answer:

    for w in words: if w not in text: print(w) -> Option A
  4. Quick Check:

    Use not in for absence check [OK]
Hint: Use if w not in text to find missing words [OK]
Common Mistakes:
  • Omitting in keyword in various positions
  • Forgetting in keyword
  • Printing words that are present instead of absent