在Windows上使用virtualenv -p(和virtualenvwrapper-win)的多个python版本

时间:2012-01-04 06:18:47

标签: python windows python-3.x virtualenv virtualenvwrapper

我想使用多个版本的python(2.5和2.7是我需要的,但也很高兴有3.2)。 在Windows XP上!

我想使用virtualenvwrapper-win而不是virtualenv -p

以下是Unix的方法: Use different Python version with virtualenv

相同的方法是否适用于virtualenvwrapper-win? mkvirtualenv的源代码似乎将参数传递给第35行的virtualenv: https://github.com/davidmarble/virtualenvwrapper-win/blob/master/scripts/mkvirtualenv.bat

我想我会问这个问题是否有人这样做(并告诉别人他们可以这样做)在尝试之前先问这个问题(并且可能搞乱我的python环境)。

如果你这样做了,有什么值得注意的吗?我可以在第二个python版本中使用ActiveState python安装吗?

3 个答案:

答案 0 :(得分:3)

Virtualenvwrapper将命令行标志直接传递给virtualenv。 mkvirtualenv --python=c:/your/path/to/python2.5将使用python 2.5设置您的虚拟环境。我做了很多次。

也就是说,如果您尽可能少地安装 虚拟环境 ,它将为您节省麻烦。 (你总是可以毫不费力地删除虚拟环境,更难以完全删除一个以外的软件包/更改路径)多个版本的python可以使pip和easy_install做一些奇怪的事情。在虚拟环境中,您不必担心这一点。

你不必担心弄乱你的python环境,至少不用virtualenv,它很容易添加或删除虚拟环境。 --python标志将与任何python可执行文件一起使用(它只是在虚拟环境中设置一组不同的脚本),因此它应该与ActiveState一起使用。

答案 1 :(得分:0)

关于安装python的其他版本(多个版本),我安装了ActiveState python 2.7和3.3。它们安装在c:/ area中的不同目录中。

目前,2.7安装为默认python。旧的python可以在命令行中以python25的形式访问。

Python 3.3不会安装为默认的python。此外,您必须使用完整路径名或自己将其添加到路径中(或在安装过程中启用该选项)。

但总的来说,使用ActiveState安装多个版本的python非常容易。

对于virtualenv:

python 2.7:pip存在一些问题。似乎能够通过在virtualenv中运行“easy_install pip”来解决它。

python 3.3:mkvirtualenv命令出现问题:它导致python失败!我没有追求这个,因为我现在不需要它(但如果有人知道问题是什么,解决方案会很棒!)

2013年10月13日编辑: 我不得不将virtualenvwrapper-win重新安装到python27环境中。在那之后,python27 virtualenv工作正常。

答案 2 :(得分:0)

我发现这个项目非常有帮助。

https://github.com/pyenv/pyenv

它可以自动安装和管理多个python版本 所以你可以安装python 2.4.3和2.5.2和2.7.1 然后,您可以在要运行的python版本之间切换,并测试您的python应用程序。

它还有辅助脚本
https://github.com/pyenv/pyenv-virtualenvwrapper
https://github.com/pyenv/pyenv-virtualenv