numpy.random.randint() 总是 return 连续且对齐的 ndarray 吗?

Does numpy.random.randint() always return a contiguous and aligned ndarray?

是否 numpy.random.randint(),当提供一个 size 参数并因此 returning 一个 ndarray 时,总是 return 一个 连续的 对齐 数组?

(我想确保通过 PyArray_DATA 到达的 return 值的数据可以通过 C 指针算法安全有效地索引。numpy.random.randint() docs 不明确保证。)

current source code 中,对 ndarray 的原始 C 索引访问正是它在返回之前的填充方式:

        array = <ndarray>np.empty(size, int)
        length = PyArray_SIZE(array)
        array_data = <long *>PyArray_DATA(array)
        with self.lock, nogil:
            for i from 0 <= i < length:
                rv = lo + <long>rk_interval(diff, self. internal_state)
                array_data[i] = rv
        return array

所以以同样的方式访问它应该没问题。