nonlocal (1) 썸네일형 리스트형 [python] nonlocal 키워드 그리고 global 와의 차이점 파이썬 코딩 테스트를 풀다가 문제가 안풀려서 찾다보니 nonlocal 키워드라는 것을 알게 되었다. nonlocal 키워드를 알기 전에 내가 겪게된 문제 상황을 먼저 설명하는 것이 좋을것 같다. 문제 상황 def test(): a = 3 def sum(): a = 7 return True sum() return a result = test() # 3이 출력됨 print(result) 일단 파이썬 함수 안에서는 함수를 따로 정의할 수 있고, 내부에 정의된 함수는 자신을 정의한 함수의 변수에 접근할 수 있다. (이런 기능을 클로저라고 한다) 원래 의도는 sum 함수 내에서 a 값을 7로 변경하고 이를 test 함수에서 return 하는 것이다. (물론 실제 겪었던 문제는 훨씬 복잡했지만 이해를 위해 간단한 .. 이전 1 다음