玩蛇网提供最新Python编程技术信息以及Python资源下载!
您现在的位置: 玩蛇网首页 > Python进阶教程 > 正文内容

Python基础入门必备

Python对象的别名引用

Python基础教程(第2版 修订版)
玩蛇网推荐图文教程: python黑客多线程扫描器

今天玩蛇网来给大家讲一下Python对象别名的概念。

假设有一个变量a,引用了一个对象,我们赋值 b = a,这样两个变量都会引用同一个Python对象:

>>> a = [1, 2, 3,]
>>> b = a
>>> b is a
True

python 变量定义,变量和对象之间的这种关联的关系称为引用,在上面例子里面,有2个指向同一个对象的引用。

当一个对象有多个引用的时候,并且引且有不同的名称,我们称这个对象有别名(aliase)。

如果有别名的对象是可变类型的,那么对一个别名的修改就会影响到另一个:

>>> b[0] = 17
>>> print a
[17, 2, 3]

虽然这种行为可能很有用,但它也容易导致错误和异常,通常来说,当处理可变对象时,避免使用别名会更加安全。

对于字符串这样的不可变对象,别名则不会带来这个问题,看下面例子:

>>> a = 'banana'
>>> b = 'banana'

不论变量a和变量b是否引用同一个字符串对象,都不会有什么区别。

玩蛇网文章,转载请注明出处和来源网址:http://www.iplaypython.com/jinjie/jj179.html



微信公众号搜索"玩蛇网Python之家"加关注,每日最新的Python资讯、图文视频教程可以让你一手全掌握。强烈推荐关注!

微信扫描下图可直接关注

玩蛇网PythonQQ群,欢迎加入: ① 240764603 玩蛇网Python新手群
修订日期:2016-01-31 21:05 玩蛇网 www.iplaypython.com

我要分享到:    
评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)

必知PYTHON模块 Must Know PYTHON Modules