klioop for iOS

변수와 메모리 본문

python

변수와 메모리

klioop2@gmail.com 2021. 3. 16. 14:21

변수가 실제로 가리키는 것

 

a =  10

 

위 처럼 선언하면, 10 이라는 수는 비어있는 메모리 슬롯에 저장된다. 10 이 64-bit int 로 정의된 수라고 가정하고 처음 저장된 메모리 슬롯의 주소가 0x1001 이라고 하자.

그렇다면 10 은 0x1001~1008 메모리 슬롯에 저장될 것이고 a 는 0x1001 메모리 주소를 '참조' 하게 된다. 실제로 프로그래밍을 할 때는 a 와 10 을 같은 것으로 인식하고 코드를 작성해도 아무런 문제가 없지만 실제로는, 변수는 10 이 저장되어 있는 첫번째 메모리 주소를 참조하고 있다.

메모리 주소 확인

파이썬에서 다음의 코드로 메모리의 주소를 확인할 수 있다.

 

id(a)
# 긴 숫자

hex(id(a))
# hexdecimal 값으로 변환한 주소, 더 읽기 쉽다