我的机器上安装了两个版本的Python(版本2.6和2.5)。我想在一个项目上运行2.6,在另一个项目上运行2.5。
我如何指定我想要使用哪个?
我正在使用Windows XP SP2。
我的机器上安装了两个版本的Python(版本2.6和2.5)。我想在一个项目上运行2.6,在另一个项目上运行2.5。
我如何指定我想要使用哪个?
我正在使用Windows XP SP2。
当前回答
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时,它不会覆盖其他主要版本的其他安装。安装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命令,所以这不是一个问题。
为这个问题增加了两个解决方案:
使用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
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.
>>>
这里有一个解决方案:
首先,在你的电脑上安装你想要运行的所有版本。https://www.python.org/ 其次,创建您想使用的python版本的虚拟环境。 "py [python_version] -m venv [vrtual_environment_name]"示例:"py -3.9 -m venv env"
注意:你不需要运行"pip install virtualenv"
运行不同的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即可。