【发布时间】:2022-01-13 10:22:26
【问题描述】:
我有两天一直在处理的两个问题:
如果我想为一个 numpy 对象 adarray 确定对象的内存地址和使用 numpy 方法 .array 的元素,一次使用普通的 python 函数 hex(id()) 我得到不同的地址。 使用 hex(id()) 它变得非常奇怪。有时元素会得到相同的地址,有时会得到不同的地址。
import numpy as np
y = np.array([0,1,2,3])
print(y.data)
print(y[0].data)
print(y[1].data)
print(y[2].data)
print(y[3].data)
print(hex(id(y[0])))
print(hex(id(y[1])))
print(hex(id(y[2])))
print(hex(id(y[3])))
结果是:
<memory at 0x7f9aaa22d870>
<memory at 0x7f9aaa1bd940>
<memory at 0x7f9aaa1bd940>
<memory at 0x7f9aaa1bd940>
<memory at 0x7f9aaa1bd940>
0x7f9aaa31e030
with hex((id))
0x7f9aaa1c0750
0x7f9aaa1c0730
0x7f9aaa1c0130
0x7f9aaa1c0750
【问题讨论】:
标签: python numpy memory multidimensional-array hex