Python导入错误:'无法导入名称'

时间:2016-09-27 18:24:51

标签: python import scrapy

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

以下是我的目录结构:

from wikiSpider.items import Article

此行的代码中断:

valueAxesSettings

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

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

4 个答案:

答案 0 :(得分:1)

您的root和_spiders文件夹中都有一个items.py.要引用子文件夹中的文件,您需要文件夹名称和文件。

来自_spiders.items导入文章

假设导入此代码的文件位于根目录中。对于它的目录层次结构,Python使用你在这里的当前文件位置。

答案 1 :(得分:1)

和其他人一样,我没有循环引用问题。我想在这里概括一下解决方案。

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

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

例如:trello.py作为宠物项目。 来自trello进口TrelloApi

导入引用将在导入pip安装包之前导入自身。尝试直接导入trello和引用对象将失败,并出现" NameError:name''未定义"

答案 2 :(得分:0)

from main wikiSpider directive try:

from _wikiSpider._spiders.items import Article 


orelse from terminal open your _spiders directive and try:

from items import Article

这里我们要打开我们创建Article类的items.py文件,所以当你给出一些错误的指令或文件时,它无法找到你创建的items.py文件,因此它显示“无法导入”错误'

答案 3 :(得分:0)

最佳解决方案:

  1. 使用临时名称重命名班级名称
  2. __init__.py
  3. 的import语句中输入相同的临时名称
  4. 现在有效,再次提出旧名称