【发布时间】:2021-11-17 14:20:58
【问题描述】:
我正在加载一个带有importlib 的模块:
from importlib.machinery import SourceFileLoader
from importlib.util import spec_from_loader, module_from_spec
from pathlib import Path
from typing import Union
PathStr = Union[Path, str]
def load_module(module_path:PathStr, module_name="module"):
"""Load and return a module"""
loader = SourceFileLoader(module_name, module_path)
spec = spec_from_loader(loader.name, loader)
module = module_from_spec(spec)
loader.exec_module(module)
return module
函数返回的模块类型是什么?我想不通。
【问题讨论】:
-
可以this similar question 帮忙吗?
-
乍一看,它看起来......很难挖掘出来。好收获!
-
你可以使用
reveal_type(module)让mypy在类型检查时报告推断的类型。 -
@Wombatz ...确实可以。但它揭示了
Any:)
标签: python-3.x mypy python-importlib