Python 从另一个目录导入时出现 ModuleNotFoundError
Python ModuleNotFoundError while importing from another directory
我有这样的目录结构
-project
--folder1
---file1.py
--folder2
---file2.py
如何从 file2 导入一个函数并在 file1 中使用它?
我试过
import sys
sys.path.insert(0, '../folder2/')
from file2 import foo
foo()
但这行不通。
我试图在每个文件夹中包含 __init__.py
,但它也不起作用。
是我的相对路径有误,还是怎么办?
使用import folder2.file2
或from folder2.file2 import function_name
PS: 你的项目目录应该在python路径
对于简单的解决方案,您可以将“绝对”路径添加到 project 目录,然后将 from folder2.file2 import foo
放入 file1.py 喜欢 :
import sys
sys.path.insert(0, <absolute path to "project" direcotry>)
from folder2.file2 import foo
foo()
现在您可以直接 运行 您的 file1.py
,python 会找到 folder2
,因此 file2
。
或者,您可以将“绝对”路径添加到 folder2 目录,然后将 from file2 import foo
放入 file1.py喜欢:
import sys
sys.path.insert(0, <absolute path to "project" folder2>)
from file2 import foo
foo()
现在您可以直接 运行 您的 file1.py
,python 会找到 file2
。
我有这样的目录结构
-project
--folder1
---file1.py
--folder2
---file2.py
如何从 file2 导入一个函数并在 file1 中使用它? 我试过
import sys
sys.path.insert(0, '../folder2/')
from file2 import foo
foo()
但这行不通。
我试图在每个文件夹中包含 __init__.py
,但它也不起作用。
是我的相对路径有误,还是怎么办?
使用import folder2.file2
或from folder2.file2 import function_name
PS: 你的项目目录应该在python路径
对于简单的解决方案,您可以将“绝对”路径添加到 project 目录,然后将 from folder2.file2 import foo
放入 file1.py 喜欢 :
import sys
sys.path.insert(0, <absolute path to "project" direcotry>)
from folder2.file2 import foo
foo()
现在您可以直接 运行 您的 file1.py
,python 会找到 folder2
,因此 file2
。
或者,您可以将“绝对”路径添加到 folder2 目录,然后将 from file2 import foo
放入 file1.py喜欢:
import sys
sys.path.insert(0, <absolute path to "project" folder2>)
from file2 import foo
foo()
现在您可以直接 运行 您的 file1.py
,python 会找到 file2
。