무작위 패키지 반품을 "입력"하는 방법 [중복]
Nov 24 2020
작업중인 애플리케이션에서 플러그인을 허용하는 API를 구축하고 있습니다. importlib.import_module
플러그인을 가져 오는 데 사용 하고 있습니다. 분명히 나는 미리 어떤 모듈을 가져올 지 전혀 모른다. 가져 오기를 수행하는 데 사용하는 메서드에서 반환 유형을 일반 모듈로 식별하는 방법이 있습니까?
def import_plugin(plugin_name: str) -> <Some generic module type>:
# conditional tests here...
return importlib.import_module("plugins.{}".format(plugin_name))
답변
1 khelwood Nov 24 2020 at 19:52
모듈의 종류는 다음과 같이 주어진다 types.ModuleType
에서 types
모듈.
import types
type(types) is types.ModuleType
# => True
ericl16384 Nov 24 2020 at 19:45
파이썬은 덕 타이핑을 사용 하므로 모듈이라고 가정하고 사용자가 처리하도록 허용하지 않는 것이 좋습니다. 정말로 유형을 얻고 싶다면 types.ModuleType
khelwood가 말한 것처럼 사용하십시오 .