Import Python script with relative path
我有一个脚本从它的目录中加载图像,我希望能够从任何文件中导入该脚本,而这个脚本仍然能够找到它的图像。这样可能更清楚:
A/ file1.py images/img.png
B/ file2.py
在
1 | image = load_img("images/img.png") |
在
1 2 | import file1 # here, I expect to be able to use file1.image |
但是在文件2中,相对路径是相对于
我怎样才能让我的
提前感谢您的帮助或建议。
获取"file1.py"目录并构造路径:
1 2 3 4 5 | # Inside file1.py import os filename = os.path.join(os.path.dirname(__file__),"images/img.png") image = load_img(filename) |
默认情况下不能这样做。您需要使用sys.path.insert选项转到该文件夹,然后导入所需文件
1 2 3 4 5 | import sys sys.path.insert(0, '../A/') import file1 print file1.image |