Python 中的变量赋值

原创 2021年 5月 24日
标签: PYTHON

先打个广告:欢迎关注我的公众号,参与 文史大挑战 趣味题目。使用方法见 这篇文章

公众号:晚花行乐

正文开始:

本文简单介绍 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/ ,且不得用于商业用途。