微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

mypy 错误:找不到模块

如何解决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 举报,一经查实,本站将立刻删除。