c# java等编程语言中, 变量有自己独有的内存地址,不会改变。
比如 在 c# 中,
int a =1;
这时候,可以用 &a 获取变量 a 的内存地址,比如变量 a 的内存地址为 0x112233,变量 a 的值为 1;
a =2;
这时候,可以用 &a 获取变量 a 的内存地址,发现变量 a 的内存地址依然为 0x112233,只是此刻 a 的值为 2;
而 python 中,变量没有自己独有的内存地址么?
比如在 python中
a =1;
这时候,使用 print(id(a)) 输出的是 数字 1 的内存地址,根据值类型 保存值的,变量 a的内存地址也是一样的 假设为 0x223344
a =2后, print(id(a)) 输出的就是数字 2 在内存中的地址了,也就是变量 a 的内存地址,发现已经变了 ,变成了 0x334455啦