numpy.isfortran#
- numpy.isfortran(a)[源代码]#
检查数组是否是 Fortran 连续的但 不是 C 连续的.
这个函数已过时.如果你只想检查一个数组是否为 Fortran 连续的,请使用
a.flags.f_contiguous
代替.- 参数:
- andarray
输入数组.
- 返回:
- isfortranbool
如果数组是 Fortran 连续的但 不是 C 连续的,则返回 True.
示例
np.array 允许指定数组是否按 C 连续顺序(最后一个索引变化最快)或内存中的 FORTRAN 连续顺序(第一个索引变化最快)写入.
>>> import numpy as np >>> 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