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
Recall & Review
beginner
What are the three ways to create a string in Python?
You can create strings using single quotes ('example'), double quotes ("example"), or triple quotes ('''example''' or """example"""). Triple quotes allow multi-line strings.
Click to reveal answer
intermediate
How does Python represent strings internally?
Python stores strings as sequences of Unicode characters, allowing support for many languages and symbols beyond ASCII.
Click to reveal answer
intermediate
What is the difference between raw strings and normal strings in Python?
Raw strings (prefix r or R) treat backslashes (\) as literal characters and do not interpret escape sequences like \n or \t.
Click to reveal answer
beginner
How can you include quotes inside a string without ending it?
You can use different quotes to surround the string than the ones inside it, for example: "He said 'hello'" or 'She said "hi"'. Alternatively, use escape characters like \" or \'.
Click to reveal answer
intermediate
What does the repr() function do with strings?
repr() returns a string representation that shows the string with quotes and escape characters, useful for debugging.
Click to reveal answer
Which of these is a valid way to create a multi-line string in Python?
AUsing double quotes " only
BUsing single quotes ' only
CUsing triple quotes ''' or """
DUsing backticks `string`
✗ Incorrect
Triple quotes allow strings to span multiple lines.
What does the prefix r before a string mean in Python?
AIt creates a raw string where backslashes are treated literally
BIt reverses the string
CIt makes the string uppercase
DIt removes all spaces
✗ Incorrect
Raw strings do not process escape sequences like \n.
How can you include a double quote inside a string defined with double quotes?
AUse single quotes inside double quotes without escape
BJust type it without any special character
CYou cannot include double quotes inside double quotes
DEscape it with a backslash like \"
✗ Incorrect
Escape characters allow including quotes inside strings.
What will repr('Hello\nWorld') return?
A'Hello\nWorld'
BHello
World
CHello World
DError
✗ Incorrect
repr() shows the string with escape characters visible.
Which statement about Python strings is true?
AStrings can only contain ASCII characters
BStrings are sequences of Unicode characters
CStrings are mutable (can be changed)
DStrings must be enclosed in single quotes only
✗ Incorrect
Python strings support Unicode and are immutable.
Explain how to create strings in Python and how to include quotes inside them.
Think about how you can mix quotes or use backslashes.
You got /5 concepts.
Describe the difference between normal strings and raw strings in Python.
Consider how \n behaves in each.
You got /4 concepts.
Practice
(1/5)
1. Which of the following is a correct way to create a string in Python?
easy
A. text = Hello'
B. text = Hello
C. text = 'Hello'
D. text = """Hello
Solution
Step 1: Check string delimiters
Python strings must be enclosed in matching quotes: single ('') or double (\"\").
Step 2: Validate each option
text = 'Hello' uses single quotes correctly. text = Hello misses quotes. text = Hello' has mismatched quotes. text = """Hello has unclosed triple quotes.
Final Answer:
text = 'Hello' -> Option C
Quick Check:
Strings need matching quotes = A [OK]
Hint: Strings always need matching quotes around text [OK]
Common Mistakes:
Forgetting quotes around text
Using mismatched quotes
Leaving quotes unclosed
2. Which of the following is the correct syntax to create a multi-line string in Python?
easy
A. text = '''Hello
World'''
B. text = "Hello\nWorld"
C. text = 'Hello\nWorld'
D. text = '''Hello\nWorld'''
Solution
Step 1: Understand multi-line string syntax
Triple quotes (''' or """) allow writing strings across multiple lines without escape characters.
Step 2: Analyze options
Options A and B use single/double quotes with escaped newline, which works but is not multi-line string creation. text = '''Hello\nWorld''' uses triple quotes but escapes newline, so it shows literal \n. text = '''Hello
World''' uses triple quotes with actual newline, creating a true multi-line string.
Final Answer:
text = '''Hello
World''' -> Option A
Quick Check:
Triple quotes with real newlines = C [OK]
Hint: Use triple quotes and press Enter for multi-line strings [OK]
Common Mistakes:
Using single or double quotes for multi-line text
Escaping newlines inside triple quotes
Confusing escaped \n with actual newlines
3. What will be the output of the following code?
text = '''Hello
World'''
print(text)
medium
A. Hello\nWorld
B. Hello
World
C. Hello World
D. SyntaxError
Solution
Step 1: Understand triple-quoted string behavior
Triple quotes preserve newlines inside the string as actual line breaks.
Step 2: Analyze the string content and print output
The \n escape sequence in the triple-quoted string is interpreted as a newline character, so the string content is 'Hello' + newline + 'World'. Thus, print(text) outputs two lines: 'Hello' then 'World' on the next line.
Final Answer:
Hello
World (two lines) -> Option B
Quick Check:
Triple quotes keep newlines = A [OK]
Hint: Triple quotes print newlines as line breaks, not \n text [OK]
Common Mistakes:
Confusing escaped \n with actual newline
Expecting literal \n to print as two characters
Thinking triple quotes cause syntax error
4. The following code throws an error. What is the problem?
text = 'It's a sunny day'
medium
A. Missing escape for single quote inside string
B. Using double quotes instead of single quotes
C. Triple quotes needed for single quotes inside
D. No error, code is correct
Solution
Step 1: Identify the string delimiter and content
The string uses single quotes to start and end, but contains an unescaped single quote inside (in "It's").
Step 2: Understand why error occurs
The inner single quote ends the string early, causing a syntax error. It needs to be escaped with a backslash or use double/triple quotes.
Final Answer:
Missing escape for single quote inside string -> Option A
Quick Check:
Escape inner quotes or use different quotes = D [OK]
Hint: Escape inner quotes or use different quote types [OK]
Common Mistakes:
Ignoring escape for inner quotes
Assuming single quotes inside single quotes are allowed
Not using triple quotes for complex strings
5. You want to create a dictionary where keys are words and values are their lengths from a multi-line string. Which code correctly creates this dictionary?
text = '''apple\nbanana\ncherry\n'''
# Fill in the blank:
d = {word: len(word) for word in _____}
hard
A. text.split()
B. text.split(' ')
C. text.split('\n')
D. text.splitlines()
Solution
Step 1: Understand the string and splitting methods
The string ends with a newline ('''apple\nbanana\ncherry\n'''). splitlines() and split('\n') include a trailing empty string ''. split() splits on all whitespace (including newlines) and discards empty fields. split(' ') ignores newlines.
Step 2: Choose the method that avoids extra empty key
split() produces exactly {'apple':5, 'banana':6, 'cherry':6} without '' : 0.
Final Answer:
text.splitlines() -> Option D
Quick Check:
splitlines() handles newlines cleanly = B [OK]
Hint: Use splitlines() to split on newlines cleanly [OK]
Common Mistakes:
Using split() which discards empty lines but may split on other whitespace
Using split('\n') which includes trailing empty string