test = [1, 2, 3, 4, 5, 6, 7]
bound = int((-1 + (1 + 8 * len(test)) ** 0.5) / 2)
res = [test[(i + 1) * i // 2:(i + 1) * (i + 2) // 2] for i in range(bound)]
res
Элементы группировки Python в списке по возрастанию