как функции диапазона работают при создании ndarray? - PullRequest
1 голос
/ 28 мая 2020

Как здесь работает эта функция диапазона? Он генерирует ответ, но я не могу понять, что он создал результирующий ndarray.

np.array([range(i, i + 3) for i in [2, 4, 6]])

1 Ответ

1 голос
/ 28 мая 2020

Диапазон - это последовательность чисел. Диапазон функций обычно принимает 1-3 параметра range(start, stop[, step]). В вашем случае шаг опущен, поэтому применяется значение по умолчанию 1. Таким образом, он создает диапазоны от заданного числа i до этого числа +3 → range(i, i + 3)

Понимание списка заставляет заданное число i перебирать список [2,4,6], поэтому вы создаст список с 3 подсписками: [range(2,2+3), range(4,4+3), range(6,6+3)], что равно [[2,3,4], [4,5,6], [6,7,8]].

Наконец, все будет упаковано в массив numpy, и на выходе будет → array([[2, 3, 4],[4, 5, 6],[6, 7, 8]])

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...