python共享引用(多个变量引用)示例代码


Posted in Python onDecember 04, 2013
a = 3
b = a

先上图(图1)吧,大家一看就一目了然了:

python共享引用(多个变量引用)示例代码

变量名和对象,在运行赋值语句b = a之后,变量a,b都指向了对象3的内存空间.
假设这时执行 a = 'python', a将指向刚创建的字符串对象。
我们再来试试这种情况:

>>>list_1 = [1,2,3,4]
>>>list_2 = list_1
>>>list_2
>>>list_1[0] = 'python'
>>>list_2

result:

[1,2,3,4]
['python',2,3,4]

python共享引用(多个变量引用)示例代码

从我的理解上来解释的话: list是一个类型对象,而对象里的每一个元素可以看成是变量,去引用了不同内存空间的对象list_1 = [1,2,3,4]是让list_1指向list的内存空间,list_2 = list_1时,他们将指向同一个内存空间。当List_1[0]改变指向时,list_2依然指向list对象的,所以看是改变list_1[0]的值,实际上是python通过list_1直接到内存空间去做了修改,list_2的指向没有任何变量。
或许这种结果并不是我们想要的。如果你不想要这样的现象发生,需要python对象拷贝,而不是创建引用。
如:

python共享引用(多个变量引用)示例代码

Python 相关文章推荐
python求众数问题实例
Sep 26 Python
详解Python中__str__和__repr__方法的区别
Apr 17 Python
Python cookbook(数据结构与算法)实现查找两个字典相同点的方法
Feb 18 Python
使用python编写udp协议的ping程序方法
Apr 22 Python
Python使用selenium实现网页用户名 密码 验证码自动登录功能
May 16 Python
python 自动去除空行的实例
Jul 24 Python
Python 文本文件内容批量抽取实例
Dec 10 Python
Python一个简单的通信程序(客户端 服务器)
Mar 06 Python
对python中arange()和linspace()的区别说明
May 03 Python
Django模型验证器介绍与源码分析
Sep 08 Python
python 中关于pycharm选择运行环境的问题
Oct 31 Python
解决pycharm修改代码后第一次运行不生效的问题
Feb 06 Python
python函数返回多个值的示例方法
Dec 04 #Python
python sys模块sys.path使用方法示例
Dec 04 #Python
Python yield使用方法示例
Dec 04 #Python
python函数参数*args**kwargs用法实例
Dec 04 #Python
Mac OS X10.9安装的Python2.7升级Python3.3步骤详解
Dec 04 #Python
Python Web框架Pylons中使用MongoDB的例子
Dec 03 #Python
python将xml xsl文件生成html文件存储示例讲解
Dec 03 #Python
You might like
php jquery 多文件上传简单实例
2013/12/23 PHP
由php中字符offset特征造成的绕过漏洞详解
2017/07/07 PHP
PHP+原生态ajax实现的省市联动功能详解
2017/08/15 PHP
使用PHPStorm+XDebug搭建单步调试环境
2017/11/19 PHP
PHP+Redis开发的书签案例实战详解
2019/07/09 PHP
php解压缩zip和rar压缩包文件的方法
2019/07/10 PHP
Laravel框架控制器的middleware中间件用法分析
2019/09/30 PHP
Ionic快速安装教程
2016/06/03 Javascript
深入浅析Vue中的slots/scoped slots
2018/04/03 Javascript
微信小程序动态增加按钮组件
2018/09/14 Javascript
QRCode.js二维码生成并能长按识别
2018/10/16 Javascript
vue中axios封装使用的完整教程
2021/03/03 Vue.js
[05:03]显微镜下的DOTA2第十期——Ti3豪之超神幽鬼
2014/06/23 DOTA
[06:11]2014DOTA2国际邀请赛 专访团结一心的VG战队
2014/07/21 DOTA
[04:52]第二届DOTA2亚洲邀请赛主赛事第一天比赛集锦:OG娜迦海妖放大配合谜团大中3人
2017/04/02 DOTA
Python学习资料
2007/02/08 Python
Python写的英文字符大小写转换代码示例
2015/03/06 Python
Python语言描述随机梯度下降法
2018/01/04 Python
python时间日期函数与利用pandas进行时间序列处理详解
2018/03/13 Python
基于随机梯度下降的矩阵分解推荐算法(python)
2018/08/31 Python
python或C++读取指定文件夹下的所有图片
2019/08/31 Python
Win10+GPU版Pytorch1.1安装的安装步骤
2019/09/27 Python
6行Python代码实现进度条效果(Progress、tqdm、alive-progress​​​​​​​和PySimpleGUI库)
2020/01/06 Python
tensorflow 报错unitialized value的解决方法
2020/02/06 Python
python 爬虫请求模块requests详解
2020/12/04 Python
工作时间上网检讨书
2014/02/03 职场文书
2014年三八妇女节活动总结
2014/03/01 职场文书
预备党员思想汇报1000字
2014/10/07 职场文书
项目建议书
2015/02/04 职场文书
个人优缺点总结
2015/02/28 职场文书
地震捐款简报
2015/07/21 职场文书
2016党校学习心得体会
2016/01/07 职场文书
机关单位2016年法制宣传日活动总结
2016/04/01 职场文书
大学生暑期社会实践的个人总结!
2019/07/17 职场文书
pytorch中Schedule与warmup_steps的用法说明
2021/05/24 Python
原生JS实现飞机大战小游戏
2021/06/09 Javascript