从多个子文件夹导入文件 python
Import file python from multiple subfolders
如何从文件 file1.py 导入文件 file2.py?有没有不用像sys之类的库的标准方法?
project\
folder1\
folder2\
file1.py
folder3\
folder4\
file2.py
你最好使用绝对导入,这样你就可以确保你的 project
在你的 sys.path
中,然后你可以直接导入 project.folder1.folder2.file1
而不必相对导入到 file2
,
如果你正在处理一个不在你的 python 路径中的包,那么我建议你创建一个虚拟环境和一个 setup.py 文件(查看 setuptools 以获取更多信息)并且如果你已经激活了你的虚拟环境,然后 运行 python setup.py install
(或者 python setup.py develop
从源目录使用它,如果你还在使用它的话)然后它 将 在您的 sys.path
中 - 请注意,如果您喜欢
,则有与 pip install .
等效的命令
否则,如果您不想以“正确”的方式进行操作,则只需手动 fiddle 和 sys.path
,是的,您将不得不 import sys
在你可以这样做之前,或者在你开始之前设置 PYTHONPATH
环境变量 python (冒号分隔的目录列表,你会想要包括 project
的父目录)
如何从文件 file1.py 导入文件 file2.py?有没有不用像sys之类的库的标准方法?
project\
folder1\
folder2\
file1.py
folder3\
folder4\
file2.py
你最好使用绝对导入,这样你就可以确保你的 project
在你的 sys.path
中,然后你可以直接导入 project.folder1.folder2.file1
而不必相对导入到 file2
,
如果你正在处理一个不在你的 python 路径中的包,那么我建议你创建一个虚拟环境和一个 setup.py 文件(查看 setuptools 以获取更多信息)并且如果你已经激活了你的虚拟环境,然后 运行 python setup.py install
(或者 python setup.py develop
从源目录使用它,如果你还在使用它的话)然后它 将 在您的 sys.path
中 - 请注意,如果您喜欢
pip install .
等效的命令
否则,如果您不想以“正确”的方式进行操作,则只需手动 fiddle 和 sys.path
,是的,您将不得不 import sys
在你可以这样做之前,或者在你开始之前设置 PYTHONPATH
环境变量 python (冒号分隔的目录列表,你会想要包括 project
的父目录)