Python - Ways to find indices of value in list

PythonServer Side ProgrammingProgramming

Usually, we require to find the index, in which the particular value is located. There are many method to achieve that, using index() etc. But sometimes require to find all the indices of a particular value in case it has multiple occurrences in list.

Example

 Live Demo

# using filter()
# initializing list
test_list = [1, 3, 4, 3, 6, 7]
# printing initial list
print ("Original list : " + str(test_list))
# using filter()
# to find indices for 3
res_list = list(filter(lambda x: test_list[x] == 3, range(len(test_list))))        
# printing resultant list
print ("New indices list : " + str(res_list))
# using enumerate()
# initializing list
test_list = [1, 3, 4, 3, 6, 7]
# printing initial list
print ("Original list : " + str(test_list))  
# using enumerate()
# to find indices for 3
res_list = [i for i, value in enumerate(test_list) if value == 3]        
# printing resultant list
print ("New indices list : " + str(res_list))
# using list comprehension
# initializing list
test_list = [1, 3, 4, 3, 6, 7]  
# printing initial list
print ("Original list : " + str(test_list))  
# using list comprehension
# to find indices for 3
res_list = [i for i in range(len(test_list)) if test_list[i] == 3]          
# printing resultant list
print ("New indices list : " + str(res_list))
# using naive method  
# initializing list
test_list = [1, 3, 4, 3, 6, 7]  
# printing initial list
print ("Original list : " + str(test_list))
# using naive method
# to find indices for 3
res_list = []
for i in range(0, len(test_list)) :
   if test_list[i] == 3 :
      res_list.append(i)
# printing resultant list
print ("New indices list : " + str(res_list))

Output

Original list : [1, 3, 4, 3, 6, 7]
New indices list : [1, 3]
Original list : [1, 3, 4, 3, 6, 7]
New indices list : [1, 3]
Original list : [1, 3, 4, 3, 6, 7]
New indices list : [1, 3]
Original list : [1, 3, 4, 3, 6, 7]
New indices list : [1, 3]
raja
Published on 06-Aug-2020 13:59:25
Advertisements