脾气暴躁和+ =效果

cpc333

我对Python 3.3.3和NumPy不太了解:

from numpy import *
x1 = zeros(1)
x2 = x1
x1+=1

事实证明,这使得x1和x2变量[1]都是我不了解的。如果改为使用x1 = x1 + 1,那么我得到的x1为[1],x2为[0],这就是我追求的。

康拉德·鲁道夫

x2 = x1使得这两个变量x2,并x1指向同一个对象。

x1+=1更改引用x1(和x2基础的对象

相反,如果您这样做了,x1=x1+1那么您将创建一个对象(的结果x1+1)并将结果分配给x1only,同时x2保持不变并引用原始对象。

顺便说一下,这与NumPy无关-这是引用工作的一般方式的结果。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章