我可以使用Python 2.6的Python 2.7子进程模块吗?

时间:2012-02-12 18:24:14

标签: python pip

我可以使用Python 2.6的Python 2.7模块吗?或者做些什么来达到同样的效果?

我只能使用Python 2.6,但Python 2.6提供的subprocess模块中存在issue。这在Python 2.7中得到修复。我很好奇,如果我使用pip(或等效的)来解决这个错误临时直到升级一天。我该怎么做呢?

3 个答案:

答案 0 :(得分:3)

是的,通常。 2.6和2.7之间的差异不是很大,因为2.7应该是2.6和3.0之间的桥梁。因此,2.7的大多数Python模块都可以在这两个版本中使用(通常在2.6比3.0更好)。

当然,唯一可靠的解决方法就是尝试!

编辑:要明确,如果您有选择,我建议您不要这么做。 仅仅因为一个模块中的Python错误而乱砍Python安装是一个坏主意。

答案 1 :(得分:1)

如果你真的想留在Python 2.6上,但也想修复这个bug,我可能会建议从源代码编译Python 2.6,但是将相关的bug修复代码应用到{{1来自2.7的模块。

您最终将获得Python 2.6的自定义版本。当然,如果您因为无法安装任何不同的版本而陷入标准2.6,那么这将无济于事。

答案 2 :(得分:1)

Etienne Perot建议使用http://code.google.com/p/python-subprocess32/提供的Python 3.2子进程反向端口,而不是破解Python安装。

这让我可以将模块安装到我的虚拟环境的site-packages中,并使用http://hg.python.org/cpython/rev/767420808a62修补子进程代码以修复上述错误。之后,一个简单的import subprocess32 as subprocess修复了问题。