python: forcing relative imports to search from script file
这是我的目录结构:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | scripts/ bpydata/ bpymodules/ myCustomScripts/ lib/ __init__.py customLib.py plugin/ __init__.py myParser.py __init__.py runner.py ... my_import_script.py ... |
我从my_import_script开始,它将导入myCustomScripts包。
从那里,我导入runner,它将导入myParser。
myParser需要在customLib中定义的东西,因此它将使用相对导入来获取它
但它不起作用,因为我开始使用my_import_script,因此它将搜索其父目录,而不是搜索myParser的父目录。
当myParser想要.lib时,我怎样才能确保我从myParser的目录而不是my_import_script的目录中加强一个目录?
要从父包导入,请使用
1 | from ..lib import customLib |
请参阅http://docs.python.org/tutorial/modules.html。