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

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

我正在使用Windows XP SP2。


当前回答

安装Python时,它不会覆盖其他主要版本的其他安装。安装Python 2.5。x不会覆盖Python 2.6。尽管安装2.6.6会覆盖2.6.5。

所以你可以安装它。然后调用你想要的Python版本。例如:

C:\Python2.5\Python.exe

用于windows上的Python 2.5和

C:\Python2.6\Python.exe

适用于windows上的Python 2.6,或者

/usr/local/bin/python-2.5

or

/usr/local/bin/python-2.6

Windows Unix(包括Linux和OS X)。

当你在Unix(包括Linux和OS X)上安装时,你会安装一个通用的python命令,这将是你安装的最后一个命令。这基本上不是问题,因为大多数脚本会显式调用/usr/local/bin/python2.5或其他东西来防止这种情况发生。但是如果你不想这样做,你可能不想这样做,你可以这样安装它:

./configure
make
sudo make altinstall

注意,“altinstall”表示它将安装该命令,但不会替换python命令。

据我所知,在Windows上你不会得到一个全局python命令,所以这不是一个问题。

其他回答

我强烈推荐pyenv-win项目。

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

只需调用正确的可执行文件

假设我们安装了python 3.7和python 3.6。

它们默认分别存储在以下文件夹中。

C:\Users\name\AppData\Local\Programs\Python\Python36 C:\Users\name\AppData\Local\Programs\Python\Python37

如果我们想在上述任何特定环境中使用CMD提示符来安装/运行命令,请这样做:

在上面的每个文件夹中都应该有python.exe。

因此,当我们尝试运行任何文件的ex.(见image1) python hello.py。我们称之为相应的python.exe。默认情况下,它选择较低版本的文件。(在这种情况下,它将从python 3.6使用)

图像

如果我们想使用python3.7运行。只需更改.exe文件名。例如,如果我更改为python37.exe,并且我想使用python3.7来运行hello.py

我将使用python37 hello.py。或者如果我想在默认情况下使用python3.7,我会将python3.6文件夹中的python.exe文件名更改为其他文件。这样每次我只使用python hello.py时,它都会使用python3.7

Cp c:\python27\bin\python.exe为python2.7.exe

Cp c:\python34\bin\python.exe为python3.4.exe

它们都在系统路径中,请选择要运行的版本

C:\Users\username>python2.7
Python 2.7.8 (default, Jun 30 2014, 16:03:49) [MSC v.1500 32 bit (Intel)] on win
32
Type "help", "copyright", "credits" or "license" for more information.
>>>

C:\Users\username>python3.4
Python 3.4.1 (v3.4.1:c0e311e010fc, May 18 2014, 10:38:22) [MSC v.1600 32 bit Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>

我认为这个答案可能对拥有多个python版本并希望使用pipenv创建虚拟环境的其他人有所帮助。

进入工程目录,执行py -[python版本]PIP install pipenv,例如:py -3.6 PIP install pipenv 运行pipenv——python [version]以创建所需python版本的虚拟环境。示例:pipenv——python 3.6 运行pipenv shell激活虚拟环境。