Skip to content
Related Articles

Related Articles

Improve Article
Save Article
Like Article

Python String rfind() Method

  • Last Updated : 19 Aug, 2021

Python String rfind() method returns the highest index of the substring if found in the given string. If not found then it returns -1.

Syntax: 

 Attention geek! Strengthen your foundations with the Python Programming Foundation Course and learn the basics.  

To begin with, your interview preparations Enhance your Data Structures concepts with the Python DS Course. And to begin with your Machine Learning Journey, join the Machine Learning - Basic Level Course

str.rfind(sub, start, end)



Parameters: 

  • sub: It’s the substring that needs to be searched in the given string. 
  • start: Starting position where the sub needs to be checked within the string. 
  • end: Ending position where suffix needs to be checked within the string. 

Note: If start and end indexes are not provided then, by default it takes 0 and length-1 as starting and ending indexes where ending indexes are not included in our search.

Return: 

Returns the highest index of the substring if it is found in the given string; if not found, then it returns -1.

Exception: 

ValueError: This error is raised in the case when the argument string is not found in the target string.

Example 1

Python3




# Python program to demonstrate working of rfind()
# in whole string
word = 'geeks for geeks'
  
# Returns highest index of the substring
result = word.rfind('geeks')
print ("Substring 'geeks' found at index :", result )
  
result = word.rfind('for')
print ("Substring 'for' found at index :", result )
  
word = 'CatBatSatMatGate'
  
# Returns highest index of the substring
result = word.rfind('ate')
print("Substring 'ate' found at index :", result)

Output: 

Substring 'geeks' found at index : 10
Substring 'for' found at index : 6
Substring 'ate' found at index : 13

Example 2

Python3




# Python program to demonstrate working of rfind()
# in a sub-string
word = 'geeks for geeks'
  
# Substring is searched in 'eeks for geeks'
print(word.rfind('ge', 2))
  
# Substring is searched in 'eeks for geeks' 
print(word.rfind('geeks', 2))
  
# Substring is searched in 'eeks for geeks' 
print(word.rfind('geeks ', 2))
  
# Substring is searched in 's for g'
print(word.rfind('for ', 4, 11))

Output: 

10
10
-1
6

Example 3: Practical Application

Useful in string checking. To check if the given substring is present in some string or not. 

Python3




# Python program to demonstrate working of rfind()
# to search a string
word = 'CatBatSatMatGate'
  
if (word.rfind('Ate') != -1):
    print ("Contains given substring ")
else:
    print ("Doesn't contains given substring")

Output: 

Doesn't contains given substring



My Personal Notes arrow_drop_up
Recommended Articles
Page :