Divida uma lista em partes com base em um conjunto de índices em Python
Qual é a melhor maneira de dividir uma lista em partes com base em um número arbitrário de índices? Por exemplo. dado o código abaixo
indexes = [5, 12, 17]
list = range(20)
retornar algo assim
part1 = list[:5]
part2 = list[5:12]
part3 = list[12:17]
part4 = list[17:]
Se não houver índices, deve retornar a lista inteira.