我的机器上安装了两个版本的Python(版本2.6和2.5)。我想在一个项目上运行2.6,在另一个项目上运行2.5。

我如何指定我想要使用哪个?

我正在使用Windows XP SP2。


当前回答

我强烈推荐pyenv-win项目。

多亏了kirankotari的工作,现在我们有了一个Windows版本的pyenv。

其他回答

根据@Aman给出的答案介绍更多细节。 为不同的python版本定义不同的环境变量。 例如:

你同时有E:\python2\python.exe和E:\python3\python.exe。 然后,您可以为E:\python2\python.exe设置环境变量%python2%,为E:\python3\python.exe设置环境变量%python2%。 最后,当您想运行python2(或python3)时,可以在命令提示符中直接输入%python2%(或%python3%)。

运行不同的Python副本与启动正确的可执行文件一样简单。您提到您已经通过简单地输入python从命令行启动了一个python实例。

这在Windows下所做的是搜索%PATH%环境变量,检查与给定名称匹配的可执行文件(批处理文件(.bat)、命令文件(.cmd)或其他要运行的可执行文件(由PATHEXT环境变量控制)。当它找到要运行的正确文件时,文件就会被运行。

现在,如果你已经安装了两个python版本2.5和2.6,该路径将包含它们的两个目录,类似于path =c:\python\2.5;c:\python\2.6,但Windows在找到匹配时将停止检查该路径。

你真正需要做的是显式地调用一个或两个应用程序,例如c:\python\2.5\python.exe或c:\python\2.6\python.exe。

另一种方法是为各自的python.exe创建一个快捷方式,将其中一个命名为python25,另一个命名为python26;然后,只需在命令行上运行python25即可。

显示已安装的python

py -0

使用python版本来做某事

py -*version*

ex.

py -3.8 venv venv

将在python 3.8中创建虚拟环境

注意:

python -0 
 or
python -3.8

不工作,我认为它必须是“py”

例如,对于3.6版本,键入py -3.6。 如果你也有32位和64位版本,你可以输入py -3.6-64或py -3.6-32。

根据@alexander,你可以像下面这样创建一组符号链接。把它们放在包含在路径中的某个地方,这样就可以很容易地调用它们

> cd c:\bin
> mklink python25.exe c:\python25\python.exe
> mklink python26.exe c:\python26\python.exe

只要c:\bin或者你放置它们的地方在你的路径中,你现在就可以去了

> python25