猿问

Python变量引用赋值

Python变量引用赋值

在代码中

y = 7x = y    
x = 8

现在,y将是7,x将是8.但实际上我想改变y。我可以指定y的参考并执行此操作吗?

例如,在C ++中可以实现同样的目的,

int y = 8;int &x = y;x = 9;

现在y&x都是9


守候你守候我
浏览 715回答 7
7回答

月关宝盒

不,Python没有这个功能。如果你有一个列表(或任何其他可变对象),你可以通过改变x和y绑定的对象来做你想要的事情:>>> x = [7]>>> y = x>>> y[0] = 8>>> print x[8]

慕田峪7331174

你应该使用一个可变对象。在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

或者,您可以使用自制容器。class Value(object):     def __init__(self, value): self.value = value y = Value(7)x = y x.value = 8print y.value
随时随地看视频慕课网APP

相关分类

Python
我要回答