如果你愿意对你的问题作一小小改动,你就可以这样做。
IF the only entrypoints to your package are controlled; e.g. you only test your code by doing something like invoking testsuite package/.../module.py
which will
您可以确定,你所做的第一件事是<编码>第1版代码>和包装/首版>。 阁下:
import sys
import os.path
packageDir = os.path.split(__name__)[0]
sys.path[:] = sys.path+[packageDir] # or maybe you want it first...
主要的告诫是,如果你不通过你的切入点,你就无法掌握假装档案。 我总是想为我写到的每一个项目做这项工作(使相对进口工作做得好),但我个人认为,这是我刚才提到的不便的。
还有第二种选择。 具体指出,你的包裹在平线道路上需要另一包裹,这并非是无理的。 一揽子计划可以是一揽子实用计划,可以实施大型舱。 例如,如果一揽子计划的名称是“x”,你可以做import x
,该编码将利用检查模块对口译分档进行思考,请你说明你从中进口哪些模块。 然后,在你发现你的包裹根基之前(通过检查某些特别指标文件,或显示,或某种东西),你可以做某种“后遗症”。 然后,该守则将通过<代码>sys.path<>/code>,以方案方式对 p路进行上述修改。 这与上述情况相同,但你可以自由地做像手法一样的事情,而不必经过一个完美的切入点。
如果你对空壳环境拥有极端控制,你也可以仅仅增加PYTHONPATH美元,以包括你的包裹目录,但在许多方面,这极为脆弱,更是leg。