Bird
Raised Fist0
Pythonprogramming~10 mins

String length and membership test 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 the length of the string.

Python
word = "hello"
print(len([1]))
Drag options to blanks, or click blank then click option'
Aword
B"word"
Clen(word)
Dhello
Attempts:
3 left
๐Ÿ’ก Hint
Common Mistakes
Using quotes around the variable name like "word" which is a string literal, not the variable.
Using len(word) inside len() causing an error.
2fill in blank
medium

Complete the code to check if the letter 'a' is in the string.

Python
text = "apple"
if [1] in text:
    print("Found a")
Drag options to blanks, or click blank then click option'
A"a"
Ba
C'text'
D"text"
Attempts:
3 left
๐Ÿ’ก Hint
Common Mistakes
Using the variable name without quotes, which causes a NameError.
Using quotes around the variable name instead of the letter.
3fill in blank
hard

Fix the error in the code to check if 'x' is not in the string.

Python
my_str = "example"
if 'x' [1] my_str:
    print("No x found")
Drag options to blanks, or click blank then click option'
Ain
Bnot in
Cnot
D!=
Attempts:
3 left
๐Ÿ’ก Hint
Common Mistakes
Using only not without in.
Using != which compares equality, not membership.
4fill in blank
hard

Fill both blanks to create a dictionary of words with length greater than 3.

Python
words = ["cat", "lion", "dog", "tiger"]
lengths = {word: [1] for word in words if len(word) [2] 3}
Drag options to blanks, or click blank then click option'
Alen(word)
B>
C<
Dword
Attempts:
3 left
๐Ÿ’ก Hint
Common Mistakes
Using the word itself instead of its length.
Using less than operator which filters wrong words.
5fill in blank
hard

Fill all three blanks to create a dictionary with uppercase keys and values longer than 4.

Python
words = ["apple", "pear", "banana", "kiwi"]
result = [1]: [2] for w in words if len(w) [3] 4}
Drag options to blanks, or click blank then click option'
Aw.upper()
Bw
C>
Dlen(w)
Attempts:
3 left
๐Ÿ’ก Hint
Common Mistakes
Using length as value instead of the word.
Using less than operator which filters wrong words.

Practice

(1/5)
1.

What does the expression len('hello') return in Python?

easy
A. 5
B. 'hello'
C. 4
D. Error

Solution

  1. Step 1: Understand the len() function

    The len() function counts how many characters are in a string.
  2. Step 2: Count characters in 'hello'

    The word 'hello' has 5 letters: h, e, l, l, o.
  3. Final Answer:

    5 -> Option A
  4. Quick Check:

    len('hello') = 5 [OK]
Hint: Count letters to find length quickly [OK]
Common Mistakes:
  • Counting letters incorrectly
  • Confusing len() with printing string
  • Expecting len() to return string itself
2.

Which of the following is the correct syntax to check if the letter 'a' is in the string word?

easy
A. word.contains('a')
B. word in 'a'
C. in 'a' word
D. 'a' in word

Solution

  1. Step 1: Recall Python membership syntax

    To check if a substring is inside a string, use substring in string.
  2. Step 2: Apply to letter 'a' and variable word

    We write 'a' in word to check if 'a' is inside word.
  3. Final Answer:

    'a' in word -> Option D
  4. Quick Check:

    Use 'in' as: substring in string [OK]
Hint: Use 'in' with substring first, then string [OK]
Common Mistakes:
  • Reversing order of 'in'
  • Using non-Python syntax like contains()
  • Syntax errors with 'in' placement
3.

What is the output of this code?

word = 'python'
print(len(word) > 5 and 'y' in word)
medium
A. False
B. 6
C. True
D. Error

Solution

  1. Step 1: Calculate len(word)

    The string 'python' has 6 characters, so len(word) is 6.
  2. Step 2: Evaluate conditions

    Check if 6 > 5 (True) and if 'y' is in 'python' (True). Both are True, so the whole expression is True.
  3. Final Answer:

    True -> Option C
  4. Quick Check:

    len(word)>5 and 'y' in word = True [OK]
Hint: Check length first, then membership with 'and' [OK]
Common Mistakes:
  • Confusing > with >= operator
  • Forgetting 'and' logic
  • Miscounting string length
4.

Find the error in this code snippet:

text = 'apple'
if 'p' not in text:
    print('No p found')
else
    print('p is present')
medium
A. Missing colon ':' after else
B. Wrong use of 'not in' operator
C. Variable 'text' is not defined
D. Indentation error on print statements

Solution

  1. Step 1: Check syntax of if-else

    Python requires a colon ':' after both if and else statements.
  2. Step 2: Identify missing colon

    The else line is missing a colon at the end, causing a syntax error.
  3. Final Answer:

    Missing colon ':' after else -> Option A
  4. Quick Check:

    else: needs colon [OK]
Hint: Always put ':' after else and if lines [OK]
Common Mistakes:
  • Omitting colon after else
  • Misusing 'not in' operator
  • Incorrect indentation
5.

Given a list of words, write a Python expression to create a new list containing only words longer than 4 characters and containing the letter 'e'.

Which of these is correct?

hard
A. [w for w in words if len(w) > 4 or 'e' in w]
B. [w for w in words if len(w) > 4 and 'e' in w]
C. [w for w in words if len(w) >= 4 and 'e' not in w]
D. [w for w in words if len(w) < 4 or 'e' not in w]

Solution

  1. Step 1: Understand the conditions

    We want words longer than 4 characters and that contain 'e'. This means length > 4 and 'e' in word.
  2. Step 2: Check list comprehension syntax

    The correct syntax is [w for w in words if len(w) > 4 and 'e' in w] which filters words by both conditions.
  3. Final Answer:

    [w for w in words if len(w) > 4 and 'e' in w] -> Option B
  4. Quick Check:

    Filter with len()>4 and 'e' in word [OK]
Hint: Use 'and' to combine length and membership tests [OK]
Common Mistakes:
  • Using 'or' instead of 'and'
  • Wrong comparison operators
  • Negating membership incorrectly