a = append(a, i*2)
и
a = []
for i in range(200000)
a = append(a, i*2)
Первая выполняется за 5 секунд, а вторая за минуту, и семнадцать секунд.
Почему такая большая разница?
Что в append?
append импортирован из numpy, добавляет значение к массиву.
Тип элементов массива какой?
Непонятно, возможно какая-то особенность с выделением памяти. В целом оба кода говно, лучше заранее выделить нужного размера
а ты попробуй определить после какой цифры начинается затрачиваться больше времени
а как выделить лист нужного размера заранее?
Так, погоди. Там лист. Тогда при чем тут нампай
Это я multiprocessing пытаюсь освоить, а тот код как эталон для замера времени выполнения большого количества несложных действий.
Все оказалось проще Note that append does not occur in-place: a new array is allocated and filled
Обсуждают сегодня