Hej, w trakcie programu muszę podzielić listę względem zer tzn. mając wejście: *[0, -1, 0, 1, 0, 1, 2, 1, 2, 1, 2, 0] * otrzymuję wyjście: list([0, -1, 0], [0, 1, 0], [0, 1, 2, 1, 2, 1, 2, 0])
Napisałam taką pętlę, która działa, jednak dla dużej listy trwa to dosyć długo, jednak nie wiem, jak to zoptymalizować.
summary = [0, -1, 0, 1, 0, 1, 2, 1, 2, 1, 2, 0]
cycles = []
get_cycles = summary.copy()
while get_cycles.count(0) > 1:
first_zero_index = get_cycles.index(0)
second_zero_index = get_cycles[first_zero_index + 1:].index(0) + first_zero_index + 1
cycle = get_cycles[first_zero_index:second_zero_index + 1]
cycles.append(cycle)
get_cycles = get_cycles[second_zero_index:]
print(cycles)
Będę wdzięczna za każdą radę :)