获取numpy ndarray偏移量

时间:2018-11-29 08:01:53

标签: python python-3.x numpy

问题:如何从ndarray的角度计算“偏移”?

示例1

输入:

std::string current_datetime3()
{
    SYSTEMTIME st;
    GetSystemTime(&st);
    std::stringstream ss;
    ss << st.wDay << "-" << st.wMonth << "-" << st.wYear << " " <<
        st.wHour << ":" << st.wMinute << ":" << st.wSecond << ":" << st.wMilliseconds;
    return ss.str();
}

预期产量

a = np.arange(10, dtype=np.uint8)
b = a[1:]
# some procedure to get offset
print(offset)

因为1 是1个字节的对象。

示例2

输入:

uint8

预期输出:

a = np.arange(10, dtype=np.uint8)
b = np.ndarray((9,), a.dtype, a.data, offset=1)
# some procedure to get offset
print(offset)

(也许)与示例1中所示的过程完全相同。

1 个答案:

答案 0 :(得分:2)

In [485]: a = np.arange(10, dtype=np.uint8)
     ...: b = a[1:]

比较这些:

In [486]: a.__array_interface__['data'][0]
Out[486]: 38965232
In [487]: b.__array_interface__['data'][0]
Out[487]: 38965233