Что вернёт arr.shape, если arr = np.arange(6).reshape(2, 3)?
A(6,)
B(3, 2)
C(2, 3)
D(2, 6)
Правильный ответ.
.reshape(r, c) меняет форму массива на (r, c), если число элементов совпадает.Разбор
np.arange(6) создаёт одномерный массив из 6 элементов. Вызов .reshape(2, 3) переупаковывает эти 6 элементов в 2 строки и 3 столбца, поэтому arr.shape будет (2, 3). Это базовый навык работы с формой массива в numpy. Вариант (3, 2) — это форма массива той же длины, но с другими размерами осей; вариант (2, 6) предполагает 12 элементов, что не соответствует исходной длине.
Проверь себя · 1/3разбор после ответа
Какой вызов создаст массив
numpy из нулей формы (7, 3) после import numpy as np?Ещё вопросы по теме «NumPy: основы»
- После `import numpy as np` вы сравниваете операции над списком Python `list` и массивом `np.ndarray`. Что верно для `lst * 2` и `arr * 2`, где `lst = [1, 2, 3]`, а `arr = np.array([1, 2, 3])`?
- Какое значение вернёт `arr.shape`, если `arr = np.array([[1, 2, 3], [4, 5, 6]])`?
- Что будет результатом выражения `arr + 10`, если `arr = np.array([1, 2, 3])`?
- Пусть `x = np.array([[1, 2], [3, 4]])`. Чему равен результат `np.sum(x, axis=0)`?
- Вы считаете метрику по большому массиву чисел и выбираете NumPy вместо Python `list`. Почему операции вроде `arr * 1.1` на `ndarray` обычно быстрее, чем цикл `for` по `list`?
- Все вопросы по «NumPy: основы» →