Python String index() Method



The python string index() method is used to return the index of the input string where the substring is found. Basically, it helps us to find out if the specified substring is present in the input string. This method takes the substring that is to be found as a mandatory parameter.

There are two optional parameters which are the starting and the ending indexes which specifies the range where the substring is to be found. If these two parameters are not specified, then the index() function works from the 0th index to the end of the string. If the substring is not found in the input string, it raises a ValueError unlike the find() function.

In the following section, we will be learning more about this method.

Syntax

The following is the syntax for the python string index() method.

str.index(str, beg=0, end=len(string))

Parameters

The following are the parameters of the python string index() method.

  • str − This parameter specifies the string that is to be searched.

  • beg − This parameter specifies the starting index. The default value is '0'.

  • end − This parameter specifies the ending index. The default value is the length of the string.

Return Value

The python string index() function returns the index if found and otherwise raises a ValueError.

Example

The following is an example of the python string find() method. In this we have created a string "Hello! Welcome to Tutorialspoint" and, trying to find the word "to" in it.

str1 = "Hello! Welcome to Tutorialspoint."
str2 = "to";
result= str1.index(str2)
print("The index where the substring is found:", result)

On executing the above program, the following output is generated -

The index where the substring is found: 15

Example

The spaces are also counted as the substrings. If there is more than one space in the input string, then the first space encountered in the input string is considered as the resultant index.

#!/usr/bin/python
str1 = "Hello! Welcome to Tutorialspoint."
str2 = " ";
result= str1.index(str2)
print("The index where the substring is found:", result)

The following is the output obtained by executing the above program -

The index where the substring is found: 6

Example

The python string index() method returns the index where the substring is found within the range of the starting and ending index that is specified.

#!/usr/bin/python
str1 = "Hello! Welcome to Tutorialspoint."
str2 = " ";
result= str1.index(str2, 12, 15)
print("The index where the substring is found:", result)

The following output is obtained by executing the above program -

The index where the substring is found: 14

Example

If the same substring is appeared for more than one time in the input string, then based on the starting or ending index that is specified as the function's parameters, the resultant index is obtained.

#!/usr/bin/python
str1 = "Hello! Welcome to Tutorialspoint."
str2 = "to";
result= str1.index(str2, 5)
print("The index where the substring is found:", result)
result= str1.index(str2, 18)
print("The index where the substring is found:", result)

The above program, on executing, displays the following output -

The index where the substring is found: 15
The index where the substring is found: 20

Example

If the substring is not found in the given range, then a ValueError is raised.

#!/usr/bin/python
str1 = "Hello! Welcome to Tutorialspoint."
str2 = "to";
result= str1.index(str2, 25)
print("The index where the substring is found:", result)

The output of the above program is displayed as follows -

Traceback (most recent call last):
  File "main.py", line 3, in 
    result= str1.index(str2, 25)
ValueError: substring not found
python_strings.htm
Advertisements