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 Indexing (Positive and Negative)
๐ Scenario: You are working with a simple text message and want to learn how to access specific characters using their positions.
๐ฏ Goal: Learn how to use positive and negative indexing to get characters from a string.
๐ What You'll Learn
Create a string variable with a specific message
Create an index variable for positive indexing
Use positive and negative indexing to get characters from the string
Print the characters obtained from both indexing methods
๐ก Why This Matters
๐ Real World
Accessing specific characters in strings is useful when processing text data, like extracting initials or checking certain letters.
๐ผ Career
Understanding string indexing is fundamental for programming tasks such as parsing user input, validating data, and manipulating text in software development.
Progress0 / 4 steps
1
Create the message string
Create a string variable called message and set it to the exact value "Hello, World!".
Python
Hint
Use quotes to create a string and assign it to the variable message.
2
Create the positive index variable
Create an integer variable called pos_index and set it to 7.
Python
Hint
Just assign the number 7 to the variable pos_index.
3
Get characters using positive and negative indexing
Create two variables: char_pos to get the character at pos_index from message, and char_neg to get the character at negative index -6 from message.
Python
Hint
Use square brackets with the index to get characters from the string.
4
Print the characters from both indexes
Print the variables char_pos and char_neg separated by a space.
Python
Hint
Use print(char_pos, char_neg) to print both characters with a space.
Practice
(1/5)
1.
What does the index 0 represent in the string "hello"?
easy
A. The last letter 'o'
B. The middle letter 'l'
C. The first letter 'h'
D. An error because indexing starts at 1
Solution
Step 1: Understand positive indexing
In Python, string indexes start at 0 for the first character.
Step 2: Apply to the string "hello"
The character at index 0 is the first letter 'h'.
Final Answer:
The first letter 'h' -> Option C
Quick Check:
Index 0 = first letter 'h' [OK]
Hint: Index 0 always means the first letter [OK]
Common Mistakes:
Thinking indexing starts at 1
Confusing index 0 with last letter
Assuming negative indexes start at 0
2.
Which of the following is the correct way to get the last character of a string s in Python?
easy
A. s[1]
B. s[-1]
C. s[0]
D. s[len(s)]
Solution
Step 1: Recall negative indexing
Negative index -1 refers to the last character in a string.
Step 2: Check each option
s[1] is second character, s[0] is first, s[len(s)] causes error (index out of range).
Final Answer:
s[-1] -> Option B
Quick Check:
Last char = s[-1] [OK]
Hint: Use -1 to get last character quickly [OK]
Common Mistakes:
Using s[len(s)] causes IndexError
Confusing s[1] as last character
Forgetting negative indexes start at -1
3.
What is the output of this code?
word = "python"
print(word[2], word[-3])
medium
A. t h
B. t o
C. t t
D. h n
Solution
Step 1: Find character at index 2
Index 0='p', 1='y', 2='t'. So word[2] = 't'.
Step 2: Find character at index -3
Negative indexes count from end: -1='n', -2='o', -3='h'. So word[-3] = 'h'.
Final Answer:
t h -> Option A
Quick Check:
word[2] = 't', word[-3] = 'h' [OK]
Hint: Count from start with positive, from end with negative [OK]
Common Mistakes:
Mixing positive and negative indexes
Counting negative indexes starting at 0
Confusing letters at indexes 2 and -3
4.
Find the error in this code snippet:
text = "example"
print(text[-0])
medium
A. No error, prints 'e' (same as text[0])
B. SyntaxError due to invalid index
C. IndexError because -0 is out of range
D. IndexError: -0 is invalid
Solution
Step 1: Understand -0 as index
In Python, -0 is the same as 0, so text[-0] equals text[0].
Step 2: Check output
text[0] is 'e', the first letter, so it prints 'e' without error.
Final Answer:
No error, prints 'e' (same as text[0]) -> Option A
Quick Check:
-0 = 0 index, prints first letter 'e' [OK]
Hint: -0 equals 0, so no error and prints first letter [OK]
Common Mistakes:
Thinking -0 is invalid index
Expecting IndexError for -0
Confusing negative zero with positive zero
5.
Given the string s = "programming", which expression returns the substring "ing" using only negative indexes?
hard
A. s[-3:-0]
B. s[-4:-1]
C. s[-3:-1]
D. s[-3:]
Solution
Step 1: Understand slicing with negative indexes
s[-3:] means start at third last character to end.
Step 2: Apply to "programming"
Third last character is 'i', so s[-3:] = 'ing'. Other options exclude last character or cause empty slice.
Final Answer:
s[-3:] -> Option D
Quick Check:
Negative slice from -3 to end = 'ing' [OK]
Hint: Use s[-3:] to get last 3 letters easily [OK]