PyLint:模块“ main_app”中没有名称“ new file”

时间:2020-02-14 06:15:06

标签: python django pylint

我在主应用程序(main_app)中创建了一个文件(permissions.py)。现在,我将其导入了实际的应用视图(actual_app):

from main_app.permissions import SomeClass

Pylint抛出错误:

E0611: No name 'permissions' in module 'main_app' (no-name-in-module)
E0401: Unable to import 'main_app.permissions' (import-error)

但是,如果我在错误检查中排除了E0611,E0401,则我的程序可以正常运行。有什么想法吗?

其他发现: 如果我这样做:

from ..main_app.permissions import SomeClass

成功,但现在实际程序失败。似乎它无法以django方式导入模块。

1 个答案:

答案 0 :(得分:0)

我不知道您是否遇到了同样的问题,但我也遇到了这个问题。

当同时存在文件foo.py和文件夹foo时,pylint似乎不知道该跟随哪个。 Python 本身足够聪明,如果文件 foo/bar.py 的类为 bazfrom foo.bar import baz 可以正常工作。

但 pylint 似乎只看 foo.py,如果它不包含名为 bar 的东西,就会抱怨。

一种解决方法是重命名您的文件 foo.py。虽然这不是真正的解决方案,但它可以在没有 pylint 警告的情况下获得工作代码。