2014-06-13 2 views

답변

8

, the docs 기준 :

이 사전의 내용을 수정할 수 없습니다; 변경 사항은 인터프리터가 사용하는 로컬 및 프리 변수의 값에 영향을 미치지 않을 수 있습니다.

def func(): 
    locals()['val'] = 1 
    print val 

마지막 문은 항상 전역에서 읽

는 그 이유 중 하나는 변수가 글로벌 또는 로컬인지 즉,에, 그래서 함수를 컴파일하는 동안 정의이다, 생각 지역 변수가 선언되지 않았으므로 변수. 따라서 지역 주민을 동적으로 추가 할 수 있다면 인생을 더욱 힘들게 할 수 있습니다.

+0

어쨌든 추가하고 작동 시키려면 방법이 있습니까? –

+0

@CharlieParker 나는 그렇게 생각하지 않는다. 당신의 유스 케이스는 무엇입니까? – bereal

+0

나의 사용 사례는 matlab의로드 함수가 https://www.mathworks.com/help/matlab/ref/load.html 인 것을 복제하는 것이다. 네임 스페이스에 변수를 완벽하고 깔끔하게로드한다. –

관련 문제