我在python中从其他文件导入内容时遇到问题。我的设置看起来像这样:
program/
file1.py
file2.py
common/
__init__.py
file3.py
我在文件1和2中说import common
。但是出于某种原因,导入失败,说no module named common
。更奇怪的是,创建一个具有不同名称的新文件,并且它自己的__init__.py
,它导入完全正常。
完整的背景故事是我在另一台计算机上处理这些文件,然后通过电子邮件发送给我自己并将它们装回我的实际计算机上。这是发生导入错误的时间。我为重新加载文件所做的是简单地删除旧文件(包括文件结构)并使用我通过电子邮件发送给自己的文件重建它。这会对进口产生任何影响吗?
编辑:我刚刚意识到,当我下载文件时,我实际上有两个__init__.py
,一个是普通名字,另一个是最后一个号码1
(区分差异)。我将文件重命名为__init__.py
,但我无法从中导入。即使我将该文件移动到新文件夹,它也会导致导入错误。我该如何解决这个问题?
答案 0 :(得分:0)
您应该可以执行以下操作:
from common import file3, file4
答案 1 :(得分:0)
没关系,事实证明我所要做的就是更改原始__init__.py
的名称,从头开始创建一个新的__init__.py
,复制所有代码,然后删除原始__init__.py
1}}。不确定是什么导致它像它一样失败,但至少我现在有一个解决方案。