引言
Python
对于不同变量值,其在内存存储的空间是存在差异的。这里简单说明一下。
正文
如果我们将相同的数字赋值给不同的变量,这些不同变量对应的地址是相同的。
from copy import copy, deepcopy
x = 1
x1 = 1
x2 = 1
x3 = copy(1)
x4 = deepcopy(1)
print(id(x))
print(id(x1))
print(id(x2))
print(id(x3))
print(id(x4))
print('-' * 50)
x = 99
x1 = 99
x2 = 99
x3 = copy(99)
x4 = deepcopy(99)
print(id(x))
print(id(x1))
print(id(x2))
print(id(x3))
print(id(x4))
print('-' * 50)
x = 10001
x1 = 10001
x2 = 10001
x3 = copy(10001)
x4 = deepcopy(10001)
print(id(x))
print(id(x1))
print(id(x2))
print(id(x3))
print(id(x4))
"""
result:
140708563313448
140708563313448
140708563313448
140708563313448
140708563313448
--------------------------------------------------
140708563316584
140708563316584
140708563316584
140708563316584
140708563316584
--------------------------------------------------
1637555940144
1637555940144
1637555940144
1637555940144
1637555940144
"""
可以看出,结果也验证了这一点。
对于列表类型数据,
x = [1, 2, 3]
x1 = [1, 2, 3]
print(id(x))
print(id(x1))
"""
result:
1722287934144
1722287738624
"""
显然,其存放的数据是位于不同地址的。
如果大家觉得有用,就请点个赞吧~