Как заменить следующие петли for
более эффективным пониманием списка или что-то подобное? Numpy
и Pandas
не являются опцией, поскольку они не установлены на клиентской системе, но возможно itertools
может быть вам полезна?Заменить for-loop на неделе со списком осмысления
n_day_cells = 24*60/240
week_matrix = list()
for i in range(7):
for j in range(n_day_cells):
week_matrix.append([i,j,0])
EDIT: К сожалению, я должен, возможно, были немного более конкретными. Я на Python 2.7 без других пакетов, кроме «основных» пакетов, таких как itertools
. Этот код должен запускать ~ 1M-1B раз в моем скрипте.
Пояснение в списках более кратким, но они не более эффективны, чем базовые для циклов. BTW, лучше сделать 'week_matrix = []', а не 'week_matrix = list()'. –
Это не строгий ответ, но вы можете использовать 'itertools.product':' list (itertools.product (range (7), range (n_day_cells), range (1))) ' – alain
Выполняется ли порядок элементов в' '' week_matrix'''? – wwii