ModuleNotFoundError: No module named when importing from the sub directory

ModuleNotFoundError: No module named when importing from the sub directory

大家好。我已经搜索了每个 Whosebug,但仍然没有任何效果。

我有以下结构:

vision
|_____ main.py
|_____ Classes
      |_________ Rocket.py
      |_________ __init__.py   which is empty

现在我想使用 class rocket,它在 Rocket.pymain.py

我试过了

import Classes.Rocket

import .Rocket

import Rocket

在所有情况下它都会引发 ModuleNotFoundError:

没有任何效果。有什么建议吗?

好的,你有包 Classes,它有模块 Rocket,它有 class rocket.

如果你想在 main 的全局命名空间中有 rocket,你可以

from Classes.Rocket import rocket

或者您可以像以前一样导入它:

import Classes.Rocket

但是要使用 rocket,您可以像 Classes.Rocket.rocket 一样访问它。

P.S。常见的 python 风格指南将模块命名为小写,classes 为大写。所以,我建议将 Classes.Rocket.rocket 重命名为 classes.rocket.Rocket.