Bird
Raised Fist0
DSA Pythonprogramming~10 mins

Why Strings Are a Data Structure Not Just Text in DSA Python - Test Your Knowledge

Choose your learning style10 modes available
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to get the first character of the string.

DSA Python
word = "hello"
first_char = word[1]
Drag options to blanks, or click blank then click option'
A<0>
B(0)
C[0]
D{0}
Attempts:
3 left
💡 Hint
Common Mistakes
Using parentheses instead of square brackets
Starting index at 1
2fill in blank
medium

Complete the code to find the length of the string.

DSA Python
word = "hello"
length = [1](word)
Drag options to blanks, or click blank then click option'
Alength
Bsize
Ccount
Dlen
Attempts:
3 left
💡 Hint
Common Mistakes
Using non-existent functions like size() or length()
3fill in blank
hard

Fix the error in the code to get the last character of the string.

DSA Python
word = "hello"
last_char = word[1]
Drag options to blanks, or click blank then click option'
A[1]
B[-1]
C[5]
D[-5]
Attempts:
3 left
💡 Hint
Common Mistakes
Using positive indexes beyond string length
Using index 1 which is the second character
4fill in blank
hard

Fill both blanks to create a dictionary with words as keys and their lengths as values.

DSA Python
words = ["apple", "banana", "cherry"]
lengths = {word[1] for word in words if len(word) [2] 5}
Drag options to blanks, or click blank then click option'
A: len(word)
B>
C==
D<
Attempts:
3 left
💡 Hint
Common Mistakes
Using '=' instead of ':' in dictionary comprehension
Using wrong comparison operators
5fill in blank
hard

Fill all three blanks to create a dictionary with uppercase words as keys and their lengths as values, filtering words longer than 5.

DSA Python
words = ["apple", "banana", "cherry"]
result = { [1]: [2] for word in words if len(word) [3] 5 }
Drag options to blanks, or click blank then click option'
Aword.upper()
Blen(word)
C>
Dword.lower()
Attempts:
3 left
💡 Hint
Common Mistakes
Using lowercase instead of uppercase keys
Using wrong comparison operators

Practice

(1/5)
1. Why are strings considered a data structure and not just plain text in programming?
easy
A. Because strings are only used for printing messages
B. Because strings only store numbers
C. Because strings store a sequence of characters that can be accessed and manipulated individually
D. Because strings cannot be changed once created

Solution

  1. Step 1: Understand what a string stores

    A string holds many characters in order, like a list of letters.
  2. Step 2: Recognize string operations

    You can access, change, or count characters, showing it acts like a data structure.
  3. Final Answer:

    Because strings store a sequence of characters that can be accessed and manipulated individually -> Option C
  4. Quick Check:

    Strings = sequence of characters [OK]
Hint: Strings hold characters in order, like a list [OK]
Common Mistakes:
  • Thinking strings only hold text without structure
  • Confusing immutability with data structure nature
  • Believing strings only store numbers
2. Which of the following is the correct way to access the third character of a string s = 'hello' in Python?
easy
A. s[3]
B. s(3)
C. s{3}
D. s[2]

Solution

  1. Step 1: Recall Python string indexing

    Python strings use zero-based indexing, so first character is s[0].
  2. Step 2: Identify third character index

    The third character is at index 2, so s[2] accesses it.
  3. Final Answer:

    s[2] -> Option D
  4. Quick Check:

    Third char = s[2] [OK]
Hint: Remember Python indexes start at 0 [OK]
Common Mistakes:
  • Using parentheses instead of brackets
  • Using 1-based indexing
  • Using curly braces for indexing
3. What will be the output of this code?
text = 'data'
print(text[1:3])
medium
A. ta
B. at
C. da
D. ad

Solution

  1. Step 1: Understand string slicing syntax

    text[1:3] means characters from index 1 up to but not including 3.
  2. Step 2: Identify characters at indexes 1 and 2

    text = 'd'(0), 'a'(1), 't'(2), 'a'(3). So indexes 1 and 2 are 'a' and 't'.
  3. Final Answer:

    at -> Option B
  4. Quick Check:

    Slicing text[1:3] = at [OK]
Hint: Slice excludes end index, so stop before 3 [OK]
Common Mistakes:
  • Including the character at index 3
  • Confusing start and end indexes
  • Thinking slicing returns a list
4. Identify the error in this code snippet:
word = 'hello'
word[0] = 'H'
print(word)
medium
A. Strings are immutable; you cannot assign to an index
B. Syntax error due to missing quotes
C. print statement is incorrect
D. No error; output will be 'Hello'

Solution

  1. Step 1: Understand string immutability

    Strings cannot be changed by assigning to an index; they are immutable.
  2. Step 2: Check the assignment line

    word[0] = 'H' tries to change first character, which causes an error.
  3. Final Answer:

    Strings are immutable; you cannot assign to an index -> Option A
  4. Quick Check:

    Immutable strings disallow index assignment [OK]
Hint: Strings cannot be changed by index assignment [OK]
Common Mistakes:
  • Thinking strings can be changed like lists
  • Ignoring error message
  • Assuming print causes error
5. Given the string s = 'abracadabra', which code snippet correctly counts how many times the letter 'a' appears?
hard
A. All of the above
B. count = s.count('a') print(count)
C. count = 0 for i in range(len(s)): if s[i] == 'a': count += 1 print(count)
D. count = 0 for ch in s: if ch == 'a': count += 1 print(count)

Solution

  1. Step 1: Analyze each code snippet

    count = 0 for ch in s: if ch == 'a': count += 1 print(count) uses a loop and manual count; count = s.count('a') print(count) uses built-in count method; count = 0 for i in range(len(s)): if s[i] == 'a': count += 1 print(count) uses index loop and count.
  2. Step 2: Verify correctness of all methods

    All three correctly count 'a' occurrences in the string.
  3. Final Answer:

    All of the above -> Option A
  4. Quick Check:

    All methods count 'a' correctly [OK]
Hint: Built-in count or loops both work to count chars [OK]
Common Mistakes:
  • Using wrong loop indexes
  • Forgetting to increment count
  • Assuming only built-in method works
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard