Python 导入错误:“无法导入名称”

Jac*_*acs 2 python import scrapy

我在 python 模块上导入类时遇到问题。

这是我的目录结构:

_wikiSpider
  +scrapy.cfg
  _wikiSpider
    +__init__.py
    +items.py
    +items.pyc
    +settings.py
    +settings.pyc
    +pipelines.py
    _spiders
     +__init__.py
     +__init__.pyc
     +articleSpider.py
     +articleSpider.pyc
     +items.py
Run Code Online (Sandbox Code Playgroud)

代码在这一行中断:

from wikiSpider.items import Article
Run Code Online (Sandbox Code Playgroud)

我不知道为什么,因为类 Article 是在 items.py (最深的文件夹)中定义的

有人可以给我一个解释吗?

小智 5

和其他人一样,我没有遇到循环引用问题。不过,我想稍微概括一下这里的解决方案。

任何文件名冲突都可能导致此问题。您可以有多个同名的子文件(如上所述)。

或者它可能是您正在处理的文件。

例如:trello.py 作为宠物项目。从 trello 导入 TrelloApi

导入引用将在导入 pip 安装的包之前导入自身。尝试直接导入 trello 和引用对象将失败,并显示“NameError: name '' is not Defined”