先打个广告:欢迎关注我的公众号,参与 文史大挑战 趣味题目。使用方法见 这篇文章 。
正文开始:
本文简单介绍 Python 中的变量赋值底层原理。
基本赋值语句
Python 开发中最基本和最常用的命令就是变量赋值语句:
age = 24
给人的感觉就是代数中的概念:名称为 age
的变量,其值被定义为 24.
但是底层不能这么简单的保存,因为还有其他信息。比如:数据类型。
可以把数据想象成一个篮子,里面装了多个属性,比如:
age: {
value: 24,
type: int
}
用图形表示,就是下面的图:
赋值语句执行后,一个名叫 age
的指针就指向了这个数据篮子:
为变量起别名
如果以 上一节 的赋值语句为基础,我们再建立一个新的变量:
score = age
那么底层的原理并不是创建一个新的 score
对象,而是将新的变量名指向原来的 age
所指的对象。
score
就变成了 age
的别名(alias),同一种物品的不同名字而已。这时候调用 score
或者 age
,操作的是同一个数据对象。
修改数值
如果这时候改变了任何一个别名指向的数值,比如:
age = age + 5
那么这时候会创建一个新的数据对象,而不会影响别名所指的对象。
如果您对本文有疑问或者寻求合作,欢迎 联系邮箱 。邮箱已到剪贴板
标签: PYTHON
给个免费的赞吧~
精彩评论
本站 是个人网站,采用 署名协议 CC-BY-NC 授权。
欢迎转载,请保留原文链接 https://www.lfhacks.com/tech/identifier-assignment-in-python/ ,且不得用于商业用途。