Python - 在同一个dir中导入python文件实际上使用相同的名称而不是文件

时间:2017-05-03 13:27:20

标签: python import path

这里的第一个问题是在提出这个问题之前进行了长时间的研究,但似乎无法弄明白。

我正在尝试通过标准的import语句导入同一目录中的文件:

import foo

文件如下所示:

project_folder
---->foo
---->etc.

即使工作目录似乎有序,它也不起作用。我得到的错误是foo正在尝试导入自制模块,该模块再次导入该模块内的另一个文件。所以发生以下情况:

file = wip_file.py
>import foo
------------
file = foo.py
>from spam import eggs, bacon
------------
file = eggs.py
>import bacon

垃圾邮件是站点包中自行创建的模块。现在我收到的错误是在eggs.py中导入时没有名为bacon的模块。有趣的是,培根是在foo.py中成功导入的。

然后我尝试通过它上面的文件夹名称导入它:

from project_folder import foo

然而通过这样做,它将类导入到foo文件中,该文件也被称为foo。在另一台PC上运行相同的脚本。所以我想在PyCharm中我的路径搞砸了。有没有人对如何解决这个问题,重置标准或我可以尝试的任何其他事情有任何建议?

提前非常感谢!

1 个答案:

答案 0 :(得分:0)

我终于明白了。 egg.py中错误地导入导入错误。应该是:

from . import bacon

现在一切正常。

感谢您的快速回复!