numpy.require
- numpy.require(a, dtype=None, requirements=None, *, like=None)[source]
-
Возвращает ndarray заданного типа, удовлетворяющего требованиям.
Эта функция полезна для уверенности в том, что возвращается массив с правильными флагами для передачи в скомпилированный код (возможно, через ctypes).
- Параметры
-
- aarray_like
-
Объект, который необходимо преобразовать в массив, удовлетворяющий требованиям типа.
- dtypeтип данных
-
Требуемый тип данных. Если None, сохраняется текущий тип данных. Если ваше приложение требует данных в родном байтовом порядке, включите спецификацию байтового порядка в спецификацию типа данных.
- requirementsстрока или список строк
-
Список требований может быть любым из следующего:
- ‘F_CONTIGUOUS’ (‘F’) - обеспечить Фортран-непрерывный массив
- ‘C_CONTIGUOUS’ (‘C’) - обеспечить C-непрерывный массив
- ‘ALIGNED’ (‘A’) - обеспечить массив, выровненный по типу данных
- ‘WRITEABLE’ (‘W’) - обеспечить запись в массив
- ‘OWNDATA’ (‘O’) - обеспечить массив, владеющий собственными данными
- ‘ENSUREARRAY’, (‘E’) - обеспечить базовый массив, а не подкласс
- likearray_like
-
Объект-ссылка для создания массивов, которые не являются массивами NumPy. Если переданный в
likeмассив-подобный объект поддерживает__array_function__протокол, результат будет определён им. В этом случае гарантируется создание объекта массива, совместимого с переданным через этот аргумент.Добавлена в версии 1.20.0.
- Возвращаемые значения
-
- outndarray
-
Массив со специфицированными требованиями и типом, если задан.
См. также
asarray-
Преобразование входных данных в ndarray.
asanyarray-
Преобразование в ndarray, но пропускание подклассов ndarray.
ascontiguousarray-
Преобразование входных данных в непрерывный массив.
asfortranarray-
Преобразование входных данных в ndarray с упорядочиванием памяти по столбцам.
ndarray.flags-
Информация о расположении памяти массива.
Примечания
Возвращаемый массив гарантированно будет соответствовать указанным требованиям, создавая копию при необходимости.
Примеры
>>> x = np.arange(6).reshape(2,3) >>> x.flags C_CONTIGUOUS : True F_CONTIGUOUS : False OWNDATA : False WRITEABLE : True ALIGNED : True WRITEBACKIFCOPY : False UPDATEIFCOPY : False
>>> y = np.require(x, dtype=np.float32, requirements=['A', 'O', 'W', 'F']) >>> y.flags C_CONTIGUOUS : False F_CONTIGUOUS : True OWNDATA : True WRITEABLE : True ALIGNED : True WRITEBACKIFCOPY : False UPDATEIFCOPY : False
© 2005–2022 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.21/reference/generated/numpy.require.html