[python] 모듈 자체 내부의 모듈에 대한 참조를 얻는 방법은 무엇입니까?

해당 모듈 내에서 모듈에 대한 참조를 얻으려면 어떻게해야합니까? 또한 해당 모듈이 포함 된 패키지에 대한 참조를 얻는 방법은 무엇입니까?



답변

import sys
current_module = sys.modules[__name__]


답변

sys 모듈을 가져 오지 않고 논란의 여지가 있지만-취향에 따라 다른 기술이 더 간단합니다.

current_module = __import__(__name__)

가져 오기가 없습니다. 파이썬은 각 모듈을 한 번만 가져옵니다.


답변

해당 모듈에 __module__클래스가있는 경우 클래스 의 속성은 클래스의 모듈 이름입니다. 따라서를 통해 모듈에 액세스 할 수 있습니다 sys.modules[klass.__module__]. 이것은 기능에도 적용됩니다.


답변

다음을 사용하여 현재 모듈의 이름을 얻을 수 있습니다 __name__

모듈 참조는 sys.modules사전 에서 찾을 수 있습니다 .

파이썬 문서를 참조하십시오


답변

외부에서 전달할 수 있습니다.

mymod.init(mymod)

이상적이지는 않지만 현재 사용 사례에 적합합니다.


답변