Nit*_*tak -3 python python-2.7 python-3.x
下面给出了这个课程,这将打印20_20.现在直到第5行代码相同,我不希望T.a
当我改变值时改变值T1.a
.怎么解决?
class Test:
def __init__(self, val):
self.a = val
T = Test(10)
T1 = T
T1.a = 20
print T.a + '__' + T1.a
Run Code Online (Sandbox Code Playgroud)
预期产量为10_20.
小智 5
在行中6. T1 = T
,您告诉python对T
被调用的对象进行新的引用T1
.
当我改变T1.a的值时,我不希望Ta的值改变
由于T和T1指向同一个对象,因此无法按照设置方式完成此操作.您可以通过注意在python解释器中T is T1
求值来看到这一点True
.
看起来好像你想要实例化2个Test
对象,每个对象都有自己的a
属性,这样改变一个对象就不会影响另一个对象.
归档时间: |
|
查看次数: |
54 次 |
最近记录: |