Python变量赋值的秘密分享


Posted in Python onApril 03, 2018

在Python中,我们令一个变量等于另外一个变量时,并不是把值传递给它,而是直接把指向的地址更改了。我们想要查看一个变量在内存中的地址,可以通过id(变量) 来查看。我们通过一个小例子来看看这个有趣的过程。

>>> x = 12
>>> y= 13
>>> id(x)
>>> id(y)
>>> x = y
>>> id(x)
>>> id(y)

首先给x变量赋值为12,y变量赋值为13,我们用id(变量)分别查看x和y在内存中的位置。上面显示分别为1865402384和1865402416。然后我们令x = y后,再查看一下它们在内存中的位置,发现x 和 y都指向了1865402416。由此可见,在python中,我们赋值的方式和C语言有所不同,c语言直接更改x那块内存里面的值,而Python直接改变x的指向,这让我想起了指针。

Python变量赋值的秘密分享

我们接着尝试一下,继续在这里输入下面的代码

>>> y = 12
>>> id(y)
1865402384

天!发生了什么??y在内存中的地址又变成1865402384了,准确说,y又指向了1865402384这块内存区域了。这样一看,和C语言的指针还真的很像呢。

Python 相关文章推荐
python实现DES加密解密方法实例详解
Jun 30 Python
利用Python代码实现数据可视化的5种方法详解
Mar 25 Python
Python读写docx文件的方法
May 08 Python
Python3 chardet模块查看编码格式的例子
Aug 14 Python
关于Python中的向量相加和numpy中的向量相加效率对比
Aug 26 Python
Python 依赖库太多了该如何管理
Nov 08 Python
Python帮你识破双11的套路
Nov 11 Python
Tensorflow tf.nn.depthwise_conv2d如何实现深度卷积的
Apr 20 Python
Python结合Window计划任务监测邮件的示例代码
Aug 05 Python
2020版Python学习路线图(附学习资料)
Sep 15 Python
python 无损批量压缩图片(支持保留图片信息)的示例
Sep 22 Python
Python 操作SQLite数据库的示例
Oct 16 Python
python中字符串变二维数组的实例讲解
Apr 03 #Python
numpy找出array中的最大值,最小值实例
Apr 03 #Python
Python获取二维矩阵每列最大值的方法
Apr 03 #Python
Python中的并发处理之asyncio包使用的详解
Apr 03 #Python
图解Python变量与赋值
Apr 03 #Python
Python实现的HMacMD5加密算法示例
Apr 03 #Python
Python通过调用mysql存储过程实现更新数据功能示例
Apr 03 #Python
You might like
PHP脚本的10个技巧(7)
2006/10/09 PHP
linux系统上支持php的 iconv()函数的方法
2011/10/01 PHP
关于初学PHP时的知识积累总结
2013/06/07 PHP
PHP json_decode函数详细解析
2014/02/17 PHP
Yii2框架自定义验证规则操作示例
2019/02/08 PHP
JavaScript入门教程 Cookies
2009/01/31 Javascript
jQuery 行背景颜色的交替显示(隔行变色)实现代码
2009/12/13 Javascript
Javascript string 扩展库代码
2010/04/09 Javascript
jQuery表格行换色的三种实现方法
2011/06/27 Javascript
jquery 面包屑导航 具体实现
2013/06/05 Javascript
Function.prototype.call.apply结合用法分析示例
2013/07/03 Javascript
js统计页面的来访次数实现代码
2014/05/09 Javascript
JQuery中DOM加载与事件执行实例分析
2015/06/13 Javascript
jQuery简单获取键盘事件的方法
2016/01/22 Javascript
JS图片等比例缩放方法完整示例
2016/08/03 Javascript
JavaScript实现同一个页面打开多张图片
2016/12/29 Javascript
JavaScript编写一个贪吃蛇游戏
2017/03/09 Javascript
Vue 实用分页paging实例代码
2017/04/12 Javascript
对vue中v-if的常见使用方法详解
2018/09/28 Javascript
vue中axios的二次封装实例讲解
2019/10/14 Javascript
[02:09]抵达西雅图!中国军团加油!
2014/07/07 DOTA
Python通过DOM和SAX方式解析XML的应用实例分享
2015/11/16 Python
python 脚本生成随机 字母 + 数字密码功能
2018/05/26 Python
Python利用scapy实现ARP欺骗的方法
2019/07/23 Python
Python Sympy计算梯度、散度和旋度的实例
2019/12/06 Python
澳大利亚最好的在线时尚精品店:Princess Polly
2018/01/03 全球购物
美国棒球装备和用品商店:Baseball Savings
2018/06/09 全球购物
Talbots官网:美国成熟女装品牌
2019/11/15 全球购物
python+selenium小米商城红米K40手机自动抢购的示例代码
2021/03/24 Python
一份创业计划书范文
2014/02/08 职场文书
2014年干部培训工作总结
2014/12/17 职场文书
2015年社区统计工作总结
2015/04/21 职场文书
大国崛起英国观后感
2015/06/02 职场文书
2019经典广告词集锦!
2019/07/02 职场文书
小型企业的绩效考核制度模板
2019/11/21 职场文书
Vue中插槽slot的使用方法与应用场景详析
2021/06/08 Vue.js