numpy.
isfortran
(a )[来源] ¶检查数组是否是Fortran连续的,而不是 C连续的。
此函数已过时,并且由于宽松的步幅检查导致的更改,对于NumPy> = 1.10.0的版本和以前的版本,同一数组的返回值可能会有所不同。如果只想检查数组是否为Fortran连续数组,请a.flags.f_contiguous
改用。
输入数组。
如果数组是Fortran连续但不是 C连续的,则返回True 。
例子
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顺序的数组也是FORTRAN顺序的,其求值为False。
>>> np.isfortran(np.array([1, 2], order='F'))
False