我在virtualenv下使用了一个脚本,它需要bzrlib包,这在我的virtualenv中不可用但包含在我的系统python包中:/usr/lib/python2.7/dist-packages/bzrlib/
如果我想使用它,一个选项是扩展sys.path,但我必须包含父文件夹/usr/lib/python2.7/dist-packages/
,其中包含许多其他软件包,我不想让它们可用。有没有简单的方法来包含bzrlib
包裹?
答案 0 :(得分:1)
如何在不同的目录中创建链接并使用它进行导入?甚至在你自己的项目中。
ln -s /package/dir/path /project/dir/path
如果你必须远程加载,这里是@unutbu提供的链接,显示如何操作:
How to import a module given the full path?
import imp
foo = imp.load_source('module.name', '/path/to/file.py')
foo.MyClass()