Python变量赋值的秘密分享
更新时间:2018年04月03日 15:48:25 作者:来喽来喽
在Python中,我们令一个变量等于另外一个变量时,并不是把值传递给它,而是直接把指向的地址更改了,我们通过一个小例子来看看这个有趣的过程,需要的朋友可以参考下
在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的指向,这让我想起了指针。
我们接着尝试一下,继续在这里输入下面的代码
>>> y = 12
>>> id(y)
1865402384
天!发生了什么??y在内存中的地址又变成1865402384了,准确说,y又指向了1865402384这块内存区域了。这样一看,和C语言的指针还真的很像呢。
相关文章
使用numpy.eye创建one-hot编码的实现
本文主要介绍了使用numpy.eye创建one-hot编码的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
2024-08-08
Ranorex通过Python将报告发送到邮箱的方法
这篇文章主要介绍了Ranorex通过Python将报告发送到邮箱的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
2020-01-01
Python+matplotlib绘制条形图和直方图
Matplotlib是Python的绘图库,它能让使用者很轻松地将数据图形化,并且提供多样化的输出格式。本文将为大家介绍如何用matplotlib绘制条形图和直方图,感兴趣的朋友可以学习一下
2022-04-04
python实现的简单猜数字游戏
这篇文章主要介绍了python实现的简单猜数字游戏,涉及Python操作随机数的技巧,具有一定参考借鉴价值,需要的朋友可以参考下
2015-04-04
python密码学对称和非对称密码教程
这篇文章主要为大家介绍了python密码学对称和非对称密码教程,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
2022-05-05
python实现汉诺塔方法汇总
本文给大家汇总了几种使用Python结合递归算法实现汉诺塔的方法,非常的简单实用,对大家学习Python很有帮助,希望大家能够喜欢
2016-07-07
最新评论