如何使python导入模块与文件夹一起



目前我有以下目录

my_epic_module
-> .gitignore
-> my_epic_module.py
main.py

当我尝试从main.py导入my_epic_module.py时,我执行以下操作

# the following does not work
import my_epic_module
my_epic_module.bar("foo")
# the following works
from my_epic_module import my_epic_module
my_epic_module.bar("foo")

我如何制作它,以便我可以像顶部的第一个示例一样"正常"导入它?我需要添加__init__.py吗?如果是这样,我需要放入什么?

python

module是一个文件。 包含__init__.py的文件夹是一个包。它们都可以与import语句一起使用。

如果你想使用import my_epic_module,你有薮猫的方式来实现它。

my_epic_module.py放在顶部文件夹

__init__.py添加到my_epic_module文件夹,并将from .my_epic_module import *添加到__init__.py文件

my_epic_module文件夹添加到sys.path

是的,您必须在文件夹中添加__init__.py文件。

无需将任何内容写入__init__.py文件中。只需将其保存在您的文件夹中即可。它使您的文件夹像一个包,然后您可以导入它。

最新更新