У меня есть список целых чисел...
[1,2,3,4,5,8,9,10,11,200,201,202]
Я хотел бы сгруппировать их в список списков, где каждый подсписщик содержит целые числа, последовательность которых не была нарушена. Как это...
[[1,5],[8,11],[200,202]]
У меня довольно неуклюжая работа...
lSequenceOfNum = [1,2,3,4,5,8,9,10,11,200,201,202]
lGrouped = []
start = 0
for x in range(0,len(lSequenceOfNum)):
if x != len(lSequenceOfNum)-1:
if(lSequenceOfNum[x+1] - lSequenceOfNum[x]) > 1:
lGrouped.append([lSequenceOfNum[start],lSequenceOfNum[x]])
start = x+1
else:
lGrouped.append([lSequenceOfNum[start],lSequenceOfNum[x]])
print lGrouped
Это лучшее, что я мог сделать. Есть ли более "питонический" способ сделать это? Спасибо..