mypy 错误:找不到模块

问题描述

我正在尝试设置 MYPYPATH 以查找位于另一个目录中的库。我正在导入这样的函数

from my_module import my_function

文件结构:

function
|__lib1
|  |__lib2
|     |__my_module.py
|__function1
   |__src
      |__index.py  <-- this is the file where my_module is imported

文件结构必须是这样,因为这些是 AWS Lambdas(lib1 是这里的 Lambda 层)。

我正在使用以下 tox 配置:

skipsdist = True
envlist = mypy

[testenv]
deps = -r requirements.txt

[testenv:mypy]
commands = mypy --namespace-packages -p function -p test

我尝试设置:

setenv = MYPYPATH = './function/lib1/lib2'

setenv = MYPYPATH = './function/lib1/lib2/my_module.py'

以及

mypy_path = 'function/lib1/lib2'

mypy_path = 'function/lib1/lib2/my_module.py'

我也尝试了完整路径而不是相对路径。

但是,我仍然遇到相同的错误error: Cannot find implementation or library stub for module named my_module

这不是毒性问题,因为单独运行 mypy --namespace-packages -p function -p test 会产生相同的错误

有没有办法让它工作?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)