numpy.isfortran#

numpy.isfortran(a)[source]#

Check if the array is Fortran contiguous but not C contiguous.

Deprecated since version 2.6: numpy.isfortran is deprecated. Use a.flags.fnc instead, or a.flags.f_contiguous if you only need to check for Fortran contiguity.

Parameters:
andarray

Input array.

Returns:
isfortranbool

Returns True if the array is Fortran contiguous but not C contiguous.

Examples

np.array allows to specify whether the array is written in C-contiguous order (last index varies the fastest), or FORTRAN-contiguous order in memory (first index varies the fastest).

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

The transpose of a C-ordered array is a FORTRAN-ordered array.

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

C-ordered arrays evaluate as False even if they are also FORTRAN-ordered.

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