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

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

我正在使用Windows XP SP2。


当前回答

假设我们安装了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

其他回答

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

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

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

> python25

这里有一个快速的方法:

进入要运行的python版本的目录 右键单击python.exe 选择“创建快捷方式” 给快捷方式起个名字(我用p27, p33等) 移动快捷方式到你的主目录(C:\Users\你的名字) 打开命令提示符,输入name_of_your_shortcut.lnk(我使用p27.lnk)

为这个问题增加了两个解决方案:

使用pylauncher(如果你有Python 3.3或更新版本,不需要安装它,因为Python已经自带了),或者在你的脚本中添加shebang行;

# !c:\[Python 2.5的路径]\ Python .exe -用于您希望在Python 2.5中运行的脚本 # !c:\[Python 2.6的路径]\ Python .exe -用于您希望在Python 2.6中运行的脚本

或者不是运行python命令,而是运行pylauncher命令(py) specyfing你想要的python版本;

Py -2.6 -版本2.6 Py -2 -最新安装版本2.x Py -3.4 -版本3.4 Py -3 -最新安装版本3.x

安装virtualenv并创建两个virtualenv;

virtualenv -p c:\[Python 2.5的路径]\ Python .exe[使用Python 2.5创建virtualenv的路径]\[virtualenv的名称]

virtualenv -p c:\[Python 2.6的路径]\ Python .exe[使用Python 2.6创建virtualenv的路径]\[virtualenv的名称]

例如

Virtualenv -p c:\python2.5\python.exe c:\venvs\2.5 .exe

Virtualenv -p c:\python2.6\python.exe c:\venvs\2.6 .exe

然后你可以激活第一个并像这样使用Python 2.5 c: \ venvs \ 2.5 \激活 当你想切换到Python 2.6时,你可以这样做

deactivate  
c:\venvs\2.6\activate

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

Using the Rapid Environment Editor you can push to the top the directory of the desired Python installation. For example, to start python from the c:\Python27 directory, ensure that c:\Python27 directory is before or on top of the c:\Python36 directory in the Path environment variable. From my experience, the first python executable found in the Path environment is being executed. For example, I have MSYS2 installed with Python27 and since I've added C:\MSYS2 to the path before C:\Python36, the python.exe from the C:\MSYS2.... folder is being executed.