Python将一个目录识别为模块而不是另一个?

2024-10-03 06:27:27 发布

您现在位置:Python中文网/ 问答频道 /正文

我的项目如下所示:

W:\a\lot\of\stuff\Automation
|__ __init__.py
|__ A
|   |_ __init__.py
|   |_ aLotOfFiles.py
|
|__ B
|   |_ __init__.py
|   |_ aLotOfFiles.py
|
|__ C
    |_ __init__.py
    |_ myFile.py

我在那里工作myFile.py。在它里面,我使用了很多模块AB中的文件。当与Pycharm一起工作时,每件事都非常好地工作,只要做

from A.someFile import someClass
from B.otherFile import otherClass

但是,当我完成代码的工作并开始从其他地方运行代码时,我开始出现导入错误,我在交互式python中尝试了以下操作:

>import sys
>sys.path.append('W:\\a\\lot\\of\\stuff\\')
>import Automation
# No import errors so far
>import Automation.A
# Still working fine..
>import Automation.B
Traceback (most recent call last):
    File "<stdin>", line 1, in <module>
ImportError: No module named B #Yeah, that's the module name..

现在我被难住了。这两个模块如何在Pycharm中工作,看起来完全相同,但是一个导入得很好,而另一个不在相同的情况下

有没有办法解决/是什么原因造成的/检查什么


Tags: 模块of代码frompyimportinitsys
1条回答
网友
1楼 · 发布于 2024-10-03 06:27:27

发现了问题

很明显,在路径层次结构的更高位置有一个相同工作区的旧版本,当我使用同样在那里的模块时,它起作用了,但当我使用新的模块时就不起作用了

相关问题 更多 >