Skip to content
Related Articles

Related Articles

Python | Find missing elements in List

Improve Article
Save Article
  • Difficulty Level : Medium
  • Last Updated : 19 Jun, 2019
Improve Article
Save Article

Sometimes, we can get elements in range as input but some values are missing in otherwise consecutive range. We might have a use case in which we need to get all the missing elements. Let’s discuss certain ways in which this can be done.

Method #1 : Using list comprehension
We can perform the task of finding missing elements using the range function to get the maximum element fill and then insert the elements if there is a miss.




# Python3 code to demonstrate
# Finding missing elements in List
# using list comprehension
  
# initializing list
test_list = [3, 5, 6, 8, 10]
  
# printing original list
print("The original list : " + str(test_list))
  
# using list comprehension
# Finding missing elements in List
res = [ele for ele in range(max(test_list)+1) if ele not in test_list]
  
# print result
print("The list of missing elements : " + str(res))

Output :

The original list : [3, 5, 6, 8, 10]
The list of missing elements : [0, 1, 2, 4, 7, 9]

 

Method #2 : Using set()
This problem can also be performed using the properties of difference of set and then getting the elements that are missing in a range.




# Python3 code to demonstrate
# Finding missing elements in List
# Using set()
  
# initializing list
test_list = [3, 5, 6, 8, 10]
  
# printing original list
print("The original list : " + str(test_list))
  
# Using set()
# Finding missing elements in List
res = list(set(range(max(test_list) + 1)) - set(test_list))
  
# print result
print("The list of missing elements : " + str(res))

Output :

The original list : [3, 5, 6, 8, 10]
The list of missing elements : [0, 1, 2, 4, 7, 9]

My Personal Notes arrow_drop_up
Related Articles

Start Your Coding Journey Now!