Index() Method
An Index method is a method that returns an element's postion or index of the first occurrence. By default, it will search from the beginning of the list.
Syntax
list.index(element)
This returns the index value of particular element from the list from the beginning.
Example
employee_names = ['Uday','Manish','Brinda','Mona','Kartik','Jeet']
print("List Of All Employee : ",employee_names)
emp_name = 'Kartik'
index_element = employee_names.index(emp_name)
print(f"Index Value Of {emp_name} is {index_element}")
Output
List of all Employees: ['Uday', 'Manish', 'Brinda', 'Mona', 'Kartik', 'Jeet']
The Index value of Kartik is 4.
In the above example, we find the element that matches the value 'Kartik '. So, it returns 4. Sometimes we find an element that does not exist in the list. If this occurs, the index() method will return a runtime error. For Example:
employee_names = ['Uday','Manish','Brinda','Mona','Kartik','Jeet']
print("List Of All Employee : ",employee_names)
emp_name = 'Gopal'
index_element = employee_names.index(emp_name)
print(f"Index Value Of {emp_name} is {index_element}")
Output
List Of All Employee : ['Uday', 'Manish', 'Brinda', 'Mona', 'Kartik', 'Jeet']
ValueError: 'Gopal' is not in list
To avoid this type's error, you need to used an in Operator. Using an in operator, you can check whether an element exists or not in a list. If the element exists, than it returns a 'True' Value. Otherwise it will return a 'False' Value. For Example :
employee_names = ['Uday','Manish','Brinda','Mona','Kartik','Jeet']
emp_name = 'Gopal'
if emp_name in employee_names:
result = employee_names.index(emp_name)
print(f"The {emp_name} has an index of {result}.")
else:
print(f"{emp_name} doesn't exist in the list.")
Output
Gopal doesn't exist in the list.
Index() Method With Parameters
Syntax
list.index(element,start_position,end_position)
This returns the index value of a particular element from the list between the starting position and ending position.
Both parameters are optional, or you can use both at a time or only define starting position.
Example Using Both Parameter
employee_names = ['Mona','Uday','Manish','Brinda','Mona','Kartik','Jeet']
print("List Of All Employee : ",employee_names)
emp_name = 'Mona'
index_element = employee_names.index(emp_name,1,5)
print(f"Index Value Of {emp_name} is {index_element}")
Output
Index Value of Mona is 4.
In the above example, it returns 4 because we have searching from the 1 position to the 5 position.
'Mona' is also available at 0 index, but as we gave parameters of starting and ending it returns 4. In the same example, if we do not give any parameter, it returns 0 index.
emp_name = 'Mona'
index_element = employee_names.index(emp_name)
In the above example, if we give the parameters of the start and end position and a value is not found, the same error returns, like ValueError: 'Mona' is not in list.
For Example:
employee_names = ['Mona','Uday','Manish','Brinda','Mona','Kartik','Jeet']
print("List Of All Employee : ",employee_names)
emp_name = 'Mona'
index_element = employee_names.index(emp_name,1,3)
print(f"Index Value Of {emp_name} is {index_element}")
Output
ValueError: 'Mona' is not in list
This is because 'Mona' available at 0 position and 4 position, but we have specified that the search is between 1 to 3, so it returns an error.
Always try to use an in operator with the index method to avoid this type of error.
Example Using Start Parameter Only:
employee_names = ['Mona','Uday','Manish','Brinda','Mona','Kartik','Jeet']
print("List Of All Employee : ",employee_names)
emp_name = 'Mona'
index_element = employee_names.index(emp_name,1)
print(f"Index Value Of {emp_name} is {index_element}")
Output
Index Value of Mona is 4.
Summary
The index() method is built-in method of python.
Try to use in operator to avoid errors.
Try to use start and end position for multiple occurances of elements.