- 1Python String capitalize() – Capitalize First Letter of a String
- 2Python String casefold() – Case-Insensitive String Comparison
- 3Python String center() Method – Center Align a String with Padding
- 4Python String count() Method – Count Substring Occurrences
- 5Python string.encode() – Convert String to Bytes
- 6Python String endswith() – Check if a String Ends with Substring
- 7Python String expandtabs() – Replace Tabs with Spaces
- 8Python String find() – How to Locate Substrings Easily
- 9Python String index() Method – Find Position of a Substring
- 10Python String isalnum() Method – Check Alphanumeric Strings
- 11Python String isalpha() Method – Check for Alphabetic Characters
- 12Python String isascii() Method – Check for ASCII Characters
- 13Python String isdecimal() Method – Check if All Characters Are Decimals
- 14Python String isdigit() Method – Check If a String Has Only Digits
- 15Python String isidentifier() – Check for Valid Identifiers
- 16Python String islower() Method – Check for Lowercase Strings
- 17Python String isnumeric() Method – Check for Numeric Characters
- 18Python String isprintable() Method – Check Printable Characters
- 19Python String isspace() Method – Check for Whitespace Only
- 20Python String istitle() Method – Check for Title Case
- 21Python String isupper() Method – Check for Uppercase Letters
- 22Python String join() Method – Combine Strings Easily
- 23Python String ljust() Method – Left Justify a String with Spaces or Characters
- 24Python String lower() Method – Convert to Lowercase
- 25Python String lstrip() Method – Remove Leading Characters
- 26Python String maketrans() Method – Create Translation Tables
- 27Python String partition() Method – Split into Three Parts
- 28Python String replace() Method – Replace Substrings Easily
- 29Python String rfind() Method – Find Last Occurrence of Substring
- 30Python String rindex() Method – Find Last Occurrence of a Substring
- 31Python String rjust() Method – Right Justify a String
- 32Python String rpartition() Method – Split String from the Right
- 33Python String rsplit() Method – Split from the Right
- 34Python String rstrip() Method – Remove Trailing Characters
- 35Python String split() Method – Split Strings Easily
- 36Python String splitlines() Method – Split String by Line Breaks
- 37Python String startswith() Method – Check If a String Starts With
- 38Python String strip() Method – Remove Spaces from Ends
- 39Python String swapcase() Method – Convert Uppercase to Lowercase and Vice Versa
- 40Python String title() Method – Convert to Title Case
- 41Python String translate() Method – Replace Characters Using Mapping
- 42Python String upper() Method – Convert to Uppercase
- 43Python String zfill() Method – Pad String with Zeros
Python String rindex() Method – Find Last Occurrence of a Substring
Next Topic ⮕Python String rjust() Method – Right Justify a String
Python String rindex()
Method
The rindex() method in Python returns the last index of a substring within a string. It works just like rfind()
, but instead of returning -1
when not found, it raises a ValueError
.
Syntax
string.rindex(substring, start, end)
Parameters:
substring
– The string to search forstart
– (Optional) The starting index to search fromend
– (Optional) The ending index to search to (not inclusive)
Returns:
- The highest index where the substring is found.
Raises:
ValueError
if the substring is not found.
Example 1: Basic Usage
text = "apple banana apple"
print(text.rindex("apple"))
13
Why? The second "apple" starts at index 13, which is the last occurrence.
Example 2: With Start and End Index
text = "one two three two one"
print(text.rindex("two", 0, 15))
4
Why? Within the slice from index 0 to 15, the last "two" appears at index 4.
Example 3: Substring Not Found
text = "hello world"
print(text.rindex("Python"))
ValueError: substring not found
Note: Use rfind()
instead if you want to avoid exceptions.
Use Case: Reverse Search
You can use rindex()
when you want to find the last occurrence of a word or character in a string — such as locating the last period in a sentence, or the last path in a URL.
Difference Between rfind()
and rindex()
Method | Returns if Not Found |
---|---|
rfind() | -1 |
rindex() | Raises ValueError |
Common Mistakes
- Using
rindex()
without checking if the substring exists first - Mixing up
rfind()
andrindex()
Summary
rindex()
finds the last position of a substring.- Raises an error if the substring is not found.
- Can take optional start and end parameters.
Practice Problem
Write a Python program that reads a sentence and prints the last position of the word "end"
. If not found, print "Not Found"
.
sentence = input("Enter a sentence: ")
try:
print("Last index of 'end':", sentence.rindex("end"))
except ValueError:
print("Not Found")