检查 numpy 数组是否连续?

Check if numpy array is contiguous?

如何确定 n 维 numpy 数组 Arr 在 C 风格或 Fortran 风格中是否连续?

The numpy documentation 声明可以通过属性 flags:

检查数组是 C 连续的还是 Fortran 连续的
Arr.flags['C_CONTIGUOUS']
Arr.flags['F_CONTIGUOUS']

这些属性return 一个布尔值,指示两种情况中哪一种为真。

您也可以试试ndarray.data.contiguous会员。例如。 (在我的机器上):

arr = np.arange(6).reshape(2, 3)

print(arr.data.contiguous)  # True
print(arr.data.c_contiguous)  # True
print(arr.data.f_contiguous)  # False

(我找不到任何信息:哪个 numpy 版本支持这个,即使在他们的文档中也是如此。欢迎在评论中提供任何线索!)