Spyder IDE 抱怨无法检测未定义的名称

Spyder IDE complaining about unable to detect undefined names

使用 Windows 10 与 Spyder IDE 运行 Python 3.5。我在 __init__.py 文件中看到以下抱怨 unable to detect undefined names:

但是,__init__.py 文件似乎与所有其他文件位于同一文件夹中。

那么它为什么抱怨?我试图删除前面的前导点,但它仍然抱怨。请指点一下。

你的 IDE 在抱怨,而不是 Python。当您执行 from simple import * 时,您将导入 simple 公开的所有内容 。通常不推荐这样做,因为它会污染全局命名空间并可能隐式覆盖现有对象。

您收到警告而不是错误,因为这种行为并不总是不好的。使用 __init__.py 文件公开子模块中的对象是一种非常常见的模式。只要你了解潜在的风险,就把警告静音:

from .input import *  # NOQA

如果您的模块没有公开很多对象,只需按名称导入它们:

from .input import A, B, C

这样做的好处是允许 Python 代码分析工具更好地理解您的代码并警告您潜在的问题。

我遇到了同样的问题, 星号。 我找到了模块以按照 Blender

的指示调用它们

解决了

用模块名称更改星号

找到有冲突的名称

当您将它们相加时,错误将消失

感谢您的评论,他们帮助我解决了我遇到的问题