我们可以在 Python 中为变量分配一个引用吗?


Python 中变量的概念不同于 C/C++。在 C/C++ 中,变量是内存中一个已命名的位置。即使一个值被赋给另一个值,也会在另一个位置创建一个副本。

int x=5;
int y=x;

例如,在 C++ 中,& 运算符返回已声明变量的地址。

cout<x<<&x<<y<<&y;

即使 x 和 y 都包含相同的值,这也将打印不同的地址。您可以通过将地址存储在引用变量中来为其创建别名

int x=5;
int &y=x;
y=10;
cout<<x<<y;

这表明两个变量都为 10。此处,y 是 x 的引用。因此,它们可以互换使用。

然而,在 Python 中,变量只是一个赋予内存中对象的名称。即使我们将它的值赋给另一个变量,这两个实际上都是引用内存中的同一个对象。这可以通过 id() 函数来验证。

>>> x=5
>>> y=x
>>> id(x), id(y)
(1486402752, 1486402752)

因此可以清楚地看出,在 Python 中,我们不能创建对变量的引用。


更新于: 2020 年 2 月 20 日

1 千次浏览

启动您的 职业

完成课程获得认证

开始使用
广告
© . All rights reserved.