Bird
Raised Fist0
Pythonprogramming~10 mins

String length and membership test in Python - Mini Project: Build & Apply

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
String length and membership test
๐Ÿ“– Scenario: You are working on a simple program that checks details about a username entered by a user. This is common when signing up for websites or apps.
๐ŸŽฏ Goal: You will create a program that stores a username, checks if it contains a special character, and then prints the length of the username and whether the special character is present.
๐Ÿ“‹ What You'll Learn
Create a variable called username with the exact value 'user_123'.
Create a variable called special_char with the exact value '_'.
Use the in keyword to check if special_char is in username and store the result in a variable called has_special.
Use the len() function to find the length of username and store it in a variable called length.
Print the values of length and has_special exactly as shown.
๐Ÿ’ก Why This Matters
๐ŸŒ Real World
Checking usernames or passwords for special characters and length is common in sign-up forms to ensure security and proper formatting.
๐Ÿ’ผ Career
Understanding string operations like length and membership tests is essential for roles in software development, quality assurance, and data processing.
Progress0 / 4 steps
1
Create the username variable
Create a variable called username and set it to the string 'user_123'.
Python
Hint

Use the equals sign = to assign the string 'user_123' to username.

2
Create the special character variable
Create a variable called special_char and set it to the string '_'.
Python
Hint

Assign the underscore character '_' to the variable special_char.

3
Check for special character and find length
Create a variable called has_special that is True if special_char is in username, otherwise False. Also create a variable called length that stores the length of username using the len() function.
Python
Hint

Use the in keyword to check membership and len() to get string length.

4
Print the results
Print the value of length and then print the value of has_special on separate lines.
Python
Hint

Use two print() statements, one for length and one for has_special.

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