Skip to content
Related Articles

Related Articles

Python | Check if list contains consecutive numbers
  • Last Updated : 19 Mar, 2019

Given a list of numbers, write a Python program to check if the list contains consecutive integers.

Examples:

Input : [2, 3, 1, 4, 5]
Output : True

Input : [1, 2, 3, 5, 6]
Output : False

Let’s discuss the few ways we can do this task.
 
Approach #1 : using sorted()

This approach uses sorted() function of Python. We compare the sorted list with list of range of minimum and maximum integer of the list and return it.




# Python3 Program to Create list 
# with integers within given range 
  
def checkConsecutive(l):
    return sorted(l) == list(range(min(l), max(l)+1))
      
# Driver Code
lst = [2, 3, 1, 4, 5]
print(checkConsecutive(lst))
Output:



True

 
Approach #2 : Using numpy.diff()

Numpy module provides a function diff() that calculate the n-th discrete difference along the given axis. We find the iterative difference of the sorted list and check if it is equal to 1.




# Python3 Program to Create list 
# with integers within given range 
import numpy as np
  
def checkConsecutive(l):
    n = len(l) - 1
    return (sum(np.diff(sorted(l)) == 1) >= n) 
      
# Driver Code
lst = [2, 3, 1, 4, 5]
print(checkConsecutive(lst))
Output:
True

 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

My Personal Notes arrow_drop_up
Recommended Articles
Page :