【问题标题】:Why it shows different results while I use id() comment for numpy element?为什么当我对 numpy 元素使用 id() 注释时它显示不同的结果?
【发布时间】:2021-09-20 20:37:50
【问题描述】:

我是 python 的新手。我使用下面的代码制作数组,并检查了内存位置。 它显示了不同的结果。我不知道为什么。我认为两者都会显示相同的结果。你知道为什么吗?如果是这样,请告诉我原因。提前致谢。

a = np.array([[0,1,2],[3,4,5],[6,7,8]]) 
id(a[0][0]) #1301373082608
id(a[0][0]) #1301373082704

【问题讨论】:

标签: python arrays numpy


【解决方案1】:

a 不仅仅是您作为参数传递的嵌套列表的简单包装器。 a[0] 每次使用时都会从 a 构造一个新的 3x1 数组,a[0][0]那个 3x1 数组构造一个新的 int64 值。除此之外,您无法预测每个对象是否会有不同的 id 编号,或者(因为它们的生命周期不重叠)Python 是否会为每个对象重用相同的 id。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-21
    • 1970-01-01
    • 1970-01-01
    • 2021-12-17
    • 2011-11-16
    • 1970-01-01
    相关资源
    最近更新 更多