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

时间:2018-05-20 20:59:32

标签: python python-3.x import python-import spyder

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

enter image description here

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

enter image description here

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

2 个答案:

答案 0 :(得分:7)

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

您收到警告而不是错误,因为这种行为并不总是坏事。拥有一个从子模块公开对象的__init__.py文件是一种非常常见的模式。只要你了解潜在的风险,就要沉默警告:

from .input import *  # NOQA

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

from .input import A, B, C

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

答案 1 :(得分:0)

我有同样的问题, 星号。 我按 Blender

的指示找到了要调用的模块

解决了

One

通过模块名称更改星号

Two

找到有冲突的名称

Three

当您添加它们时,该错误将被消除

Four

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