본문 바로가기
IT/파이썬(Python)

파이썬 id 함수 사용법

by 깡타의 컴맹인생 2023. 7. 21.
반응형

파이썬 id 함수 사용법


id(변수명)

id 함수는 지정한 객체의 메모리 주소를 반환한다. 사용법은 매우 간단하다.

1
2
= 1
id(a)
cs
140732902773544

a라는 변수에 1을 할당하고 id 함수를 통해 메모리 주소를 확인해 보면 위와 같다.

 

1
2
3
4
5
6
7
8
= 1
print(id(a))
 
= 2
print(id(a))
 
= 1
print(id(a))
cs
140732902773544
140732902773576
140732902773544

이번에는 a라는 변수에 1을 할당시켰다가 2를 할당시키고 다시 1을 할당시켰다. 그 결과 2라는 값이 할당되었을 때는 새로운 메모리 주소를 반환했다가 다시 1이 할당되었을 때는 기존 메모리 주소를 할당하는 것을 확인할 수 있다.

 

위의 결과에서 볼 수 있듯이, 파이썬은 변수 안의 값을 변경할 때 기존 메모리 주소 안에 있는 값을 지우고 새로운 값을 할당하는 것이 아니다. 새로운 메모리 주소에 값을 저장한다.

 

1
2
3
4
5
6
7
8
a, b = 11
print(id(a), id(b))
 
a, b = 22
print(id(a), id(b))
 
a, b = 11
print(id(a), id(b))
cs
140732902773544 140732902773544
140732902773576 140732902773576
140732902773544 140732902773544

그렇다면 동일한 값을 갖는 변수가 여러 개 있다면 어떻게 될까? 결과는 위와 같다. 같은 값이 할당되어 있는 경우라면 서로 다른 변수라도 동일한 메모리 주소를 참조한다. a와 b라는 변수가 동일하게 값이 1에서 2로 변경되었을 때도 메모리 주소는 동일하다.

반응형