numpy文档指出,可以通过属性检查数组是C连续的还是Fortran连续的flags:
Arr.flags['C_CONTIGUOUS']
Arr.flags['F_CONTIGUOUS']
Run Code Online (Sandbox Code Playgroud)
这些属性返回一个布尔值,指示两种情况中的哪一种是正确的。
你也可以试试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
Run Code Online (Sandbox Code Playgroud)
(我找不到任何信息:哪些 numpy 版本支持这一点,即使在他们的文档中也是如此。欢迎在评论中提供任何线索!)