numberlist = [1, 2, 3, 4, 5, 8, 9, 10, 11, 200, 201, 202]

def as_range(g):
    l = list(g)
return l[0], l[-1]
print([as_range(g) for _, g in groupby(numberlist, key=lambda n, c=count():
    n - next(c))])
сгруппировать список целых чисел непрерывной последовательностью