Spec-Zone.ru › NumPy 1.19

numpy.isfortran

numpy.isfortran(a) [source]

Проверка, является ли массив Fortran-непрерывным, но не C-непрерывным.

Эта функция устарела и из-за изменений, связанных с ослабленным проверкой шагов, её возвращаемое значение для одного и того же массива может отличаться в версиях NumPy >= 1.10.0 и предыдущих версиях. Если вы хотите только проверить, является ли массив Fortran-непрерывным, используйте a.flags.f_contiguous вместо этого.

Параметры
andarray

Входной массив.

Возвращает
isfortranbool

Возвращает True, если массив Fortran-непрерывный, но не C-непрерывный.

Примеры

np.array позволяет указать, записан ли массив в C-непрерывном порядке (индекс последнего элемента меняется быстрее всего) или в FORTRAN-непрерывном порядке в памяти (индекс первого элемента меняется быстрее всего).

>>> a = np.array([[1, 2, 3], [4, 5, 6]], order='C')
>>> a
array([[1, 2, 3],
       [4, 5, 6]])
>>> np.isfortran(a)
False
>>> b = np.array([[1, 2, 3], [4, 5, 6]], order='F')
>>> b
array([[1, 2, 3],
       [4, 5, 6]])
>>> np.isfortran(b)
True

Транспонирование C-непрерывного массива — это FORTRAN-непрерывный массив.

>>> a = np.array([[1, 2, 3], [4, 5, 6]], order='C')
>>> a
array([[1, 2, 3],
       [4, 5, 6]])
>>> np.isfortran(a)
False
>>> b = a.T
>>> b
array([[1, 4],
       [2, 5],
       [3, 6]])
>>> np.isfortran(b)
True

C-непрерывные массивы оцениваются как False, даже если они также FORTRAN-непрерывные.

>>> np.isfortran(np.array([1, 2], order='F'))
False

© 2005–2020 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.19/reference/generated/numpy.isfortran.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API