Computer >> 컴퓨터 >  >> 프로그램 작성 >> 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에 대한 참조입니다. 따라서 서로 바꿔서 사용할 수 있습니다.

그러나 파이썬에서 변수는 메모리에 있는 객체에 부여된 이름일 뿐입니다. 그 값을 다른 변수에 할당하더라도 사실 둘 다 메모리에서 동일한 객체를 참조하고 있습니다. id() 함수로 확인할 수 있습니다.

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

그러므로 파이썬에서는 변수에 대한 참조를 생성할 수 없다는 것이 분명합니다.