이 동작에 대한 적절한 설명을 찾을 수 없습니다.Python - locals() 및 클로저
>>> def a():
... foo = 0
... print locals()
... def b():
... print locals()
... b()
>>> a()
{'foo': 0}
{}
그러나 :
>>> def a():
... foo = 0
... print locals()
... def b():
foo
... print locals()
... b()
>>> a()
{'foo': 0}
{'foo': 0}
내가 두 번째 경우에 폐쇄가 있다는 것을 이해하지만, 내가 실제로 어떤 조건이 기능 locals()
를 반환해야하는지 아래에 자세한 설명을 찾을 수 없습니다.
내가 너라면, Michael Schuller의 답변 (그의 의견에 대한 upvote/downvote 아래의 체크 표시)을 수락 할 것입니다. 사랑을 나누고 그의 노력에 감사를 표하십시오! – rsegal
@rsegal Rostyslav Dzinko의 답변은 depeer입니다. –
사실! 나는 그것을 더 잘 표현해야만했다 : 필자는 필자가 가장 좋아하는 것이 라기보다는 대답에 대해 당신의 호의를 베풀어 야한다고 더 많이 말하려고했다. 그러나 Michael의 대답이 더 직접적으로 귀하의 질문에 대한 답으로, 파이썬이 모호한 값에 대한 범위를 검색한다는 것을 느꼈습니다. 이는 모범적 인 행동이었습니다! – rsegal