我正在尝试为新项目引用旧项目模块,是否有任何可能的方法可以轻松地引用该模块。
project1/
folder1/
main.py
secondary.py-----------
folder2/ |
test.py |
|
project2/ |
folder1/ |
main1.py |
<------------------
因为,我尝试添加路径,
我无法导入
import sys
sys.path.append('project1/folder1/secondary.py')
from project.folder1 import seconday
or someother formats
答案 0 :(得分:0)
请勿将Python 文件附加到路径中,而应将整个 package 所在的路径附加到路径中。例如,如果两个项目都位于projects
文件夹如下:
~/Documents/projects/project1/
~/Documents/projects/project2/
现在您可以这样做:
sys.path.append('~/Documents/projects')
from project1.folder1 import secondary
您还可以提供相对路径并使用sys.path.abspath()
进行转换:
sys.path.append(sys.path.abspath('../..'))
答案 1 :(得分:-2)
看看this blog,这可以帮助您了解导入情况
如果您在绝对导入方面遇到麻烦,请尝试使用相对导入,这里是相对导入的一个例子(请注意包装前的“ ..”):
from ..subpackage4.module5 import function6