python变量在计算机内存中的表示
2015-04-08 20:40
363 查看
摘自:
http://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/001374738264643de15c5c4abad47dd9510e3b86286acb8000
理解变量在计算机内存中的表示也非常重要。当我们写:
时,Python解释器干了两件事情:
在内存中创建了一个
在内存中创建了一个名为
也可以把一个变量
最后一行打印出变量
执行
执行
执行
所以,最后打印变量
http://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/001374738264643de15c5c4abad47dd9510e3b86286acb8000
理解变量在计算机内存中的表示也非常重要。当我们写:
a = 'ABC'
时,Python解释器干了两件事情:
在内存中创建了一个
'ABC'的字符串;
在内存中创建了一个名为
a的变量,并把它指向
'ABC'。
也可以把一个变量
a赋值给另一个变量
b,这个操作实际上是把变量
b指向变量
a所指向的数据,例如下面的代码:
a = 'ABC'b = a
a = 'XYZ'
print b
最后一行打印出变量
b的内容到底是
'ABC'呢还是
'XYZ'?如果从数学意义上理解,就会错误地得出
b和
a相同,也应该是
'XYZ',但实际上
b的值是
'ABC',让我们一行一行地执行代码,就可以看到到底发生了什么事:
执行
a = 'ABC',解释器创建了字符串
'ABC'和变量
a,并把
a指向
'ABC':
执行
b = a,解释器创建了变量
b,并把
b指向
a指向的字符串
'ABC':
执行
a = 'XYZ',解释器创建了字符串'XYZ',并把
a的指向改为
'XYZ',但
b并没有更改:
所以,最后打印变量
b的结果自然是
'ABC'了。
相关文章推荐
- python 变量在计算机内存中的表示
- Python变量在计算机内存中的表示
- Python变量在计算机内存中的表示
- 变量在计算机内存中的表示
- python 变量在内存中的表示(变量赋值误区)
- 获取计算机在内存中的二进制表示
- 【Python学习笔记】《和孩子一起学编程》第2章 记住内存和变量
- python学习---变量内存机制
- vb string类型变量在内存的表示?
- python变量—内存存储
- python变量内存浅析
- 浮点型变量在计算机内存中的存储格式
- python里的del变量无法立刻释放内存的解决办法
- 浮点数在计算机内存中的表示(IEEE 754规定1位是符号位,8位是指数,剩下的23位为有效数字)
- PyGrADS可以很方便地将GrADS中的变量导入Python内存空间
- python 保存ipython的内存中的变量以便下次启动时使用
- 计算机编码类型以及变量表示范围
- python 可不可以像R那样保存内存中的变量?
- 浅谈计算机内存中浮点数的表示
- Python __slots__限制动态变量个数,节省内存