인프런 커뮤니티 질문&답변

lcdmaster님의 프로필 이미지
lcdmaster

작성한 질문수

우리를 위한 프로그래밍 : 파이썬 중급 (Inflearn Original)

클로져 질문

작성

·

98

0

아래 비슷한 질문이 있는데, 답변이 없어서 저도 질문드립니다.

---------------------------------------------------------------------------------------------

closure_ex1 ,closure_ex2 을 통해 클로저를 보여주셨는데요.

결국 두개 함수의 패턴은 같은데, 하나는 변수에 빈 리스트를 선언하고 하나는 변수에 상수를 할당하였는데요.

왜 변수에 상수를 할당했을 때만 예외 에러가 나는지요?

비슷하게 생각하면 리스트도 할당전에 사용하는 것이라 에러가 나야할듯 한데요. 

무슨 차이 때문에 그런것 이지요?

답변 1

0

좋은사람님의 프로필 이미지
좋은사람
지식공유자

안녕하세요. lcdmaster님

기초과정에서 설명했다시피 파이썬에는 상수의 개념은 없습니다.

다만, 상수를 정의하기 위한 몇 가지 패턴 및 네이밍 규칙이 존재합니다.

정확한 질문 의도 파악이 되지는 않지만,

할당 전에 사용하는 부분은 클로저 영역에서 초기화가 된 상태로 메모리 영역에 로드가 된다고 생각하시면 될 것 같습니다.

파이썬 클래스 상수 사용 패턴은 아래 블로그에 가장 정확하게 나와 있는 것 같습니다.

https://medium.com/better-programming/does-python-have-constants-3b8249dc8b7b

아울러, 클로저 메모리 구조에 대해서 구글 등 검색을 통해서 한 번 읽어보시는 것을 추천드립니다.

lcdmaster님의 프로필 이미지
lcdmaster

작성한 질문수

질문하기