可以在同一个Python安装中共存同一个库的两个版本吗?

时间:2009-06-28 22:30:09

标签: python shared-libraries

C库有一种很好的后期绑定形式,其中记录了链接期间使用的库的确切版本,因此即使安装了同一个库的多个版本,可执行文件也可以找到正确的文件。

可以在Python中完成同样的工作吗?

更具体地说,我正在使用一些使用某些第三方库的Python项目,例如paramiko。 Paramiko现在是版本1.7.4,但是一些发行版带有它的旧版本,同时提供相同版本的Python解释器。

当然,我想支持尽可能多的配置,而不仅仅是最新的发行版。但是,如果我从旧的发行版提供的升级paramiko的版本,我1)使包管理器的生活变得困难2)由于库版本中的不兼容性可能会破坏一些现有的应用程序3)如果包管理器可能会破坏决定覆盖我的自定义安装。

是否可以在Python中彻底解决此问题? (即,我将如何进行设置,以及代码应该是什么样的)。理想情况下,它只需在site_libraries中安装多个版本的库,让我的脚本选择正确的版本,而不是使用一组手动安装的库来维护私有目录。

P.S。:我可以将Python程序编译成二进制文件,携带所有必需的依赖项,但它有点违背使用发行版提供的解释器的想法。我在Windows上这样做。

1 个答案:

答案 0 :(得分:8)

您可能需要查看virtualenv