我有以下文件夹结构:
root
folder1
file1.py
file2.py
folder2
file3.py
如果我要在file1.py
中导入file3.py
,那么from folder1.file1 import *
的导入会如何?
我尝试了不同的变体:from .folder1.file1 import *
,from folder1 import file1
,__init__.py
和类似的变体,但遗憾的是没有成功。我是否需要在某处创建{{1}}文件?
答案 0 :(得分:4)
是__init__.py
应出现在root
,folder1
和folder2
需要__init__.py
个文件才能使Python将目录视为包含包,它们只是一个空文件
然后你可以做
from folder1 import file1
如果包的__init__.py
代码定义了名为__all__
的列表,则它被视为遇到from package import *
时应导入的模块名称列表