Python: 'ModuleNotFoundError' 当试图从同一个包中导入模块时

Python: 'ModuleNotFoundError' when trying to import module from the same package

我在 Windows 10 中的 PyCharm 上使用 python 3.9。 我的项目结构是这样的:

/application
   /model
      /games.py
      /lock.py
      /pointClass.py
   /resources
     ...file



/lib
   ...file

在 Pycharm 上 ty 程序可以工作,但如果我尝试在 bash(在 Linux 或 MacOs 上)打开它,它会给我这个错误:

Traceback (most recent call last):
  File "games.py", line 16, in <module>
    from application.model.lock import RWLock
ModuleNotFoundError: No module named 'application'

在我的 games.py 文件中,我写这个是为了导入其他文件:

from application.model.lock import RWLock
from application.model.pointClass import *

我该如何解决这个问题? 如果你想看看我的整个项目,你可以继续这个 github 回购:https://github.com/MarioAvolio/BomberFriends

事实上,文件 games.pylock.py 以及 pointClass.py 在同一个文件夹中,所以为什么不直接导入它:

from lock import RWLock
from pointClass import *

发生这种情况是因为 Pycharm 设置了自己的虚拟环境,而当 运行 从终端您需要自己设置它时,我重新创建了您的问题并找到了解决方案,首先您可以删除绝对导入并使用:

from lock import RWlock

或者您可以编辑环境并在 games.py 顶部设置 sys.path,如下所示:

sys.path.append('Path to your project')