메모리 영역에 대해서 간단하게 알아보자!
먼저 영역은 크게 세가지가 있다. 메모리 영역, 스택영역, 코드영역
이 영역들을 그림으로 표현하면 아래와 같다.
---------------- 메모리 ------------------
----------------- stack -----------------
----------------- 코드 -----------------
아래의 코드를 실행할 경우 코드들이 어떻게 돌아가고 메모리 영역에 어떤식으로 저장되고 삭제되는지에 대해서 알아보려고 한다

먼저 result = 100 은 result 변수에 100이라는 데이터를 저장한 것이기 때문에 메모리 영역에 저장이 된다.
---------------- 메모리 ------------------
result : 100
----------------- stack -----------------
----------------- 코드 -----------------
그리고
def n_plus_1 (n) :
result = n + 1
부분은 함수의 정의이기 때문에 코드영역에 저장이 된다.
---------------- 메모리 ------------------
result : 100
----------------- stack -----------------
----------------- 코드 -----------------
def n_plus_1 (n) :
result = n + 1
stack영역에는 함수의 변수 n_plus_1( ) 영역이 생기게 된다.
n_plus_1(3) 을 실행한 값인 결과 4는 stack부분에 저장이 된다.
---------------- 메모리 ------------------
result : 100
----------------- stack-----------------
------- n_plus_1 ( ) --------
result : 4
----------------- 코드 -----------------
def n_plus_1 (n) :
result = n + 1
함수부분 실행 끝나면 stack 영역에 저장된 함수 부분은 사라지게 된다.
---------------- 메모리 ------------------
result : 100
----------------- stack -----------------
----------------- 코드 -----------------
def n_plus_1 (n) :
result = n + 1
그림으로 표현하면 위와같은 형태이다.
마지막으로 print(result)를 했기 때문에 메모리 영역에 저장된 데이터 100이 출력된다.
'Python' 카테고리의 다른 글
| [Pandas] - Dataframe 다루기 , 접근 / 컬럼 추가 / 삭제 (0) | 2022.11.24 |
|---|---|
| Numpy 활용하기 (0) | 2022.11.22 |
| 라이브러리 활용하기 - date/time (0) | 2022.11.22 |
| 라이브러리 활용하기 - random 모듈 (0) | 2022.11.22 |
| 함수( Function ) 함수의 정의, 호출( call ), 반환( return ) (0) | 2022.11.21 |