- A+
所属分类:Python
今天安云网来给大家讲一下Python对象别名的概念。
假设有一个变量a,引用了一个对象,我们赋值 b = a,这样两个变量都会引用同一个Python对象:
>>> a = [1, 2, 3,] >>> b = a >>> b is a True
变量和对象之间的这种关联的关系称为引用,在上面例子里面,有2个指向同一个对象的引用。
当一个对象有多个引用的时候,并且引且有不同的名称,我们称这个对象有别名(aliase)。
如果有别名的对象是可变类型的,那么对一个别名的修改就会影响到另一个:
>>> b[0] = 17 >>> print a [17, 2, 3]
虽然这种行为可能很有用,但它也容易导致错误和异常,通常来说,当处理可变对象时,避免使用别名会更加安全。
对于字符串这样的不可变对象,别名则不会带来这个问题,看下面例子:
>>> a = 'banana' >>> b = 'banana'
不论变量a和变量b是否引用同一个字符串对象,都不会有什么区别。
- 我的微信
- 这是我的微信扫一扫
- 我的微信公众号
- 我的微信公众号扫一扫