У меня есть список, содержащий системное время с машины. Поскольку список содержит только миллисекунды, значения не превышают 1000. Для лучшего просмотра я хочу добавить i * 1000 к определенным интервалам в этом списке каждый раз, когда список пропускает 1000. Для лучшего понимания я приведу свой список ввода и то, как должен выглядеть мой список вывода:
inputlist = [300,600,900,200,500,800,100,400]
и т. д., выходной список должен выглядеть так:
outputlist = [300,600,900,1200,1500,1800,2100,2400]
так как я хочу, чтобы список начинался с нуля, я вычитал первый элемент списка из каждого элемента, давая мне новый список ввода:
inputlist_new = [0,300,600,-100,200,500,-200,100]
который должен дать мне новый список вывода, например:
outputlist_new = [0,300,600,900,1200,1500,1800,2100]
Я попытался создать список, содержащий индексы каждого элемента <0, чтобы разрезать список на интервалы, чтобы умножить тысячи на каждом интервале, но я не могу этого сделать. Мой код для этого списка индексов таков:
list_index = [i for i, j in enumerate(inputlist_new) if j < 0]





На самом деле я сам нашел решение: я скопировал список, который хочу изменить, в новый, просто для того, чтобы, возможно, использовать его позже (так что это не обязательно для решения), а затем использовал 2 для циклов:
inputlist_new = [0,300,600,-100,200,500,-200,100]
inputlist2 = inputlist_new.copy()
for x in range(len(list_index)):
for y in range(list_index[x],len(inputlist2)):
inputlist2[y] = inputliste2[y]+1000
это дало мне желаемый результат
Просто для любопытства: кто-нибудь знает, как преобразовать 2 цикла for в понимание списка?