python内存管理如何使用变量?

问题描述 投票:0回答:1

假设我有一个这样的变量。

num1 = 1   

现在就可以

num3 = num1

如果我是正确的,那么此num3就像C中的指针一样引用num1的值,因为当我这样做的时候

print(num1 is num3)

它返回true,因为两者都指向内存中的相同对象或值

但是现在,如果我像这样改变我的值

num3 = 3

然后我打印

print(num1,num3) 

它返回“ 1,3”

如果更改了指向相同对象或值的第二个变量值,为什么num1值没有更改

python python-3.x memory-management
1个回答
0
投票
我用美人鱼画了几个草图。希望他们对您有所帮助:

内部分配

Int Assignment

[A is B等效于id(A) == id(B),指向相同内存(草图中的矩形)的变量的id相同。

列表分配

如注释中所述,无论类型如何,分配都是相同的。

List Assignment

您应注意的事项

我们需要担心的是多个对象更改所引用的对象。

What you should be careful

© www.soinside.com 2019 - 2024. All rights reserved.