Mypy“类模块”注解

Pov*_*asB 5 python types mypy

我有一个load_config加载并返回 python 模块的函数:

import imp

def load_config(path: str):
    return imp.load_source('config', path)

print(type(load_config('config.py')))
Run Code Online (Sandbox Code Playgroud)

此代码段打印<class 'module'>.

如何load_config使用 Mypy注释返回值?

max*_*max 5

正确的注释是:

import imp
import types

def load_config(path: str) -> types.ModuleType:
  return imp.load_source('config', path)
Run Code Online (Sandbox Code Playgroud)

但是,当前版本的 mypy 中存在一个待解决的问题。