code: def to_ranges(lst):
      
      for a, b in itertools.groupby(enumerate(lst), lambda t: t[1] - t[0]):
          b = list(b)
          yield b[0][1], b[-1][1]
docs: Convert a list of numbers to a list of ranges::
  
      >>> numbers = [1,2,3,5,6]
      >>> list(to_ranges(numbers))
      [(1, 3), (5, 6)]