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实现ipsec开权限实例
Nov 11 Python
Python实现接受任意个数参数的函数方法
Apr 21 Python
Django集成CAS单点登录的方法示例
Jun 10 Python
简单了解python单例模式的几种写法
Jul 01 Python
详解Python 重学requests发起请求的基本方式
Feb 07 Python
python实现ftp文件传输功能
Mar 20 Python
Python Django中的STATIC_URL 设置和使用方式
Mar 27 Python
Python3爬虫中Selenium的用法详解
Jul 10 Python
如何把python项目部署到linux服务器
Aug 26 Python
matplotlib绘制多子图共享鼠标光标的方法示例
Jan 08 Python
Python爬虫回测股票的实例讲解
Jan 22 Python
python编程实现清理微信重复缓存文件
Nov 01 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
dedecms函数分享之获取某一栏目所有子栏目
2014/05/19 PHP
thinkPHP框架实现图像裁剪、缩放、加水印的方法
2017/03/14 PHP
php插件Xajax使用方法详解
2017/08/31 PHP
suggestion开发小结以及对键盘事件的总结(针对中文输入法状态)
2011/12/20 Javascript
javascript针对DOM的应用分析(四)
2012/04/15 Javascript
js每隔5分钟执行一次ajax请求的实现方法
2013/11/27 Javascript
css配合jquery美化 select
2013/11/29 Javascript
js实现网页右上角滑出会自动消失大幅广告的方法
2015/02/27 Javascript
jQuery仿gmail实现fixed布局的方法
2015/05/27 Javascript
JavaScript简单修改窗口大小的方法
2015/08/03 Javascript
基于AngularJS前端云组件最佳实践
2016/10/20 Javascript
jQuery实现的小图列表,大图展示效果幻灯片示例
2016/10/25 Javascript
关于Jquery中的bind(),on()绑定事件方式总结
2016/10/26 Javascript
Angular2使用Angular-CLI快速搭建工程(二)
2017/05/21 Javascript
node前端模板引擎Jade之标签的基本写法
2018/05/11 Javascript
解决layui批量传值到后台操作时出现传值为空的问题
2019/09/28 Javascript
Vue 3.0 全家桶抢先体验
2020/04/28 Javascript
python改变日志(logging)存放位置的示例
2014/03/27 Python
python使用在线API查询IP对应的地理位置信息实例
2014/06/01 Python
Python+Pika+RabbitMQ环境部署及实现工作队列的实例教程
2016/06/29 Python
Python模拟登陆实现代码
2017/06/14 Python
恢复百度云盘本地误删的文件脚本(简单方法)
2017/10/21 Python
浅谈Python实现贪心算法与活动安排问题
2017/12/19 Python
Python数据分析matplotlib设置多个子图的间距方法
2018/08/03 Python
python利用跳板机ssh远程连接redis的方法
2019/02/19 Python
python web框架Flask实现图形验证码及验证码的动态刷新实例
2019/10/14 Python
Django 自动生成api接口文档教程
2019/11/19 Python
Python 面向对象静态方法、类方法、属性方法知识点小结
2020/03/09 Python
英文留学推荐信范文
2014/01/25 职场文书
质量管理标语
2014/06/12 职场文书
个人德育工作总结
2015/03/05 职场文书
2015年十一国庆节演讲稿
2015/03/20 职场文书
大学考试作弊检讨书
2015/05/06 职场文书
2015年学校少先队工作总结
2015/07/20 职场文书
2019教师的学习计划
2019/06/25 职场文书
V Rising 服务器搭建图文教程
2022/06/16 Servers