Python變量引用賦值在代碼中y = 7x = y
x = 8現在,y將是7,x將是8.但實際上我想改變y。我可以指定y的參考并執行此操作嗎?例如,在C ++中可以實現同樣的目的,int y = 8;int &x = y;x = 9;現在y&x都是9
7 回答

月關寶盒
TA貢獻1772條經驗 獲得超5個贊
不,Python沒有這個功能。
如果你有一個列表(或任何其他可變對象),你可以通過改變x和y綁定的對象來做你想要的事情:
>>> x = [7]
>>> y = x
>>> y[0] = 8
>>> print x
[8]

慕田峪7331174
TA貢獻1828條經驗 獲得超13個贊
你應該使用一個可變對象。
在python中x,y它只是對象的引用,因此y = 7意味著y指向對象7。 x=y意味著x也指向7,但是因為它7是不可變的,所以改變x的值只是改變了對象7并y仍然指向7。
>>> y = [7]
>>> x = y
>>> x[0] = 8 # here you're changing [7] not x or y, x & y are just references to [7]
>>> y
[8]

夢里花落0921
TA貢獻1772條經驗 獲得超6個贊
或者,您可以使用自制容器。
class Value(object): def __init__(self, value): self.value = value y = Value(7)x = y x.value = 8print y.value
添加回答
舉報
0/150
提交
取消