Computer >> Máy Tính >  >> Lập trình >> Python

Chúng ta có thể gán một tham chiếu cho một biến trong Python không?


Khái niệm về biến trong Python khác với C / C ++. Trong C / C ++, biến là một vị trí được đặt tên trong bộ nhớ. Ngay cả khi giá trị của một giá trị này được gán cho một giá trị khác, nó sẽ tạo ra một bản sao ở một vị trí khác.

int x=5;
int y=x;

Ví dụ trong C ++, toán tử &trả về địa chỉ của biến đã khai báo.

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

Điều này sẽ in ra địa chỉ khác nhau của x và y mặc dù cả hai đều chứa cùng một giá trị. Bạn có thể tạo bí danh cho nó bằng cách lưu trữ địa chỉ trong một biến tham chiếu

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

Điều này cho thấy cả hai biến đều có 10. Ở đây, y là một tham chiếu đến x. Do đó, chúng có thể được sử dụng thay thế cho nhau.

Tuy nhiên, trong Python, biến chỉ là tên được đặt cho một đối tượng trong bộ nhớ. Ngay cả khi chúng ta gán giá trị của nó cho một biến khác, trên thực tế cả hai đều tham chiếu đến cùng một đối tượng trong bộ nhớ. Điều này có thể được xác minh bằng hàm id ().

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

Do đó, rõ ràng là trong Python, chúng ta không thể tạo tham chiếu đến một biến.