我的大部分编程都是用Python 3完成的。但现在我需要使用Python成像库(PIL)、ImageMagick和wxPython,所有这些都需要Python 2.x。

我可以要两个Python 2吗?3. Python。Windows 7?当我运行一个脚本时,我如何“选择”哪个版本的Python应该运行它?上述程序是否能够处理同时安装的多个Python版本?我已经花了好几个小时来寻找如何做到这一点,但无济于事。

谢谢。


当前回答

我刚想到一个有趣的解决办法。虽然Windows不允许您轻松地别名程序,但您可以创建重命名的批处理文件来调用当前程序。

不要重命名可执行文件,这会破坏很多东西,包括pip,而是在与python2.exe相同的目录中创建python2.bat文件。然后添加如下一行:

%~dp0python %*

这个古老的语法是什么意思?嗯,这是一个批处理脚本(bash的Windows版本)。%~dp0获取当前目录,%*将把传递给脚本的所有参数传递给python。

对python3.bat重复此步骤

您也可以为pip和其他实用程序做同样的事情,只需将文件中的python替换为pip或任何文件名。别名将是文件命名的任何内容。

最棒的是,当添加到PATH时,Windows会忽略正在运行的扩展名

python3

将启动python3版本,而命令python2将启动python2版本。

顺便说一句,这与Spyder用于将自己添加到Windows上的路径的技术相同。:)

其他回答

我已经在windows 10pro上安装了python 2.7.13和python 3.6.1,当我尝试pip2或pip3时,我得到了相同的“致命错误”。

为了纠正这一点,我去python2和python3文件的python.exe的位置,并为每个文件创建一个副本,然后根据安装文件夹中的python版本将每个副本重命名为python2.exe和python3.exe。因此,我在每个python安装文件夹中都有一个python.exe文件和一个python2.exe或python3.exe,这取决于python版本。

当我输入pip2或pip3时,这解决了我的问题。

如果您使用Anaconda Python,您可以轻松地安装各种环境。

假设你已经安装了Anaconda Python 2.7,你想要一个Python 3.4环境:

conda create -n py34 python=3.4 anaconda

然后激活环境:

activate py34

以及deactive:

deactivate py34

(对于Linux,您应该使用源代码激活py34。)

链接:

下载蟒蛇

环境说明

只有在Python IDE中运行代码才有效

我的windows操作系统上同时安装了Python 2.7和Python 3.3。如果我试图启动一个文件,它通常会在python 2.7 IDE上打开。我如何解决这个问题,是当我选择在python 3.3上运行我的代码时,我打开python 3.3 IDLE(python GUI),选择文件,用IDLE打开我的文件并保存它。然后,当我运行我的代码时,它运行到我当前打开它的IDLE。反之亦然。

以下是你可以做的:

安装cmd。 打开并使用cmd终端,就像你会使用cmd终端一样。 使用命令alias创建命令别名。

我做了以下事情:

alias python2 = c:\python27\python.exe
alias python3 = c:\python34\python.exe

就是这样!: -)

我自己也遇到过这个问题,我把我的启动器放在。bat中,这样你就可以选择你想要启动的版本。

唯一的问题是你的.py必须在python文件夹中,但不管怎样,这里是代码:

对于Python2

@echo off
title Python2 Launcher by KinDa
cls
echo Type the exact version of Python you use (eg. 23, 24, 25, 26)
set/p version=
cls
echo Type the file you want to launch without .py (eg. hello world, calculator)
set/p launch=
path = %PATH%;C:\Python%version%
cd C:\Python%version%
python %launch%.py
pause

对于Python3

@echo off
title Python3 Launcher by KinDa
cls
echo Type the exact version of Python you use (eg. 31, 32, 33, 34)
set/p version=
cls
echo Type the file you want to launch without .py (eg. hello world, calculator)
set/p launch=
cls
set path = %PATH%:C:\Python%version%
cd C:\Python%version%
python %launch%.py
pause

将它们保存为。bat,并按照里面的说明进行操作。