python按值賦值是我的模糊理解。有沒有辦法讓python變量通過引用分配?那麼,在下面的例子中,它實際上將o.a更改爲2?如何在python中引用變量?
class myClass():
def __init__(self):
self.a = 1
def __str__(self):
_s = ''
for att in vars(self):
_s += '%s, %s' %(att, getattr(self,att))
return _s
o = myClass()
x = o.a
x = 2
print o
所以,我認爲現在有辦法讓x對o.a的引用而不是o.a的值呢? – chrise 2014-09-03 10:07:26
只要o.a發生變化,就沒有辦法讓x發生變化,除非讓它們都指向同一個可變對象(例如,一個列表),然後修改該對象(例如,更改該列表的內容)。 – 2014-09-03 11:52:57