如何在 Windows 上运行多个 Python 版本

2024-12-12 08:40:00
admin
原创
149
摘要:问题描述:我的机器上安装了两个版本的 Python(2.6 和 2.5 版)。我想在一个项目上运行 2.6 版,在另一个项目上运行 2.5 版。我如何指定我想要使用哪一个?我正在使用 Windows XP SP2。解决方案 1:运行不同的 Python 副本就像启动正确的可执行文件一样简单。您提到您已从命令行...

问题描述:

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

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

我正在使用 Windows XP SP2。


解决方案 1:

运行不同的 Python 副本就像启动正确的可执行文件一样简单。您提到您已从命令行启动了 Python 实例,只需键入 即可python

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

现在,如果您安装了两个 python 版本 2.5 和 2.6,则路径中将包含它们的两个目录,类似于PATH=c:python.5;c:python.6但当找到匹配项时,Windows 将停止检查路径。

您真正需要做的是明确调用其中一个或两个应用程序,例如c:python.5python.exec:python.6python.exe

另一种方法是创建一个快捷方式,分别调用python.exe其中一个python25和另一个;然后您只需在命令行上python26运行即可。python25

解决方案 2:

为该问题添加另外两个解决方案:

  • 使用pylauncher(如果您有 Python 3.3 或更新版本,则无需安装它,因为它已经随 Python自带)并将 shebang 行添加到您的脚本中;

#! c:[path to Python 2.5]python.exe- 对于要使用 Python 2.5 运行的脚本

#! c:[path to Python 2.6]python.exe- 对于要使用 Python 2.6 运行的脚本

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

py -2.6– 版本 2.6

py -2– 最新安装的版本 2.x

py -3.4– 版本 3.4

py -3– 最新安装的版本 3.x

  • 安装virtualenv并创建两个virtualenv;

virtualenv -p c:[path to Python 2.5]python.exe [path where you want to have virtualenv using Python 2.5 created][name of virtualenv]

virtualenv -p c:[path to Python 2.6]python.exe [path where you want to have virtualenv using Python 2.6 created][name of virtualenv]

例如

virtualenv -p c:python2.5python.exe c: envs.5

virtualenv -p c:python2.6python.exe c: envs.6

然后你可以激活第一个并使用 Python 2.5,就像这样

c: envs.5activate

,当你想切换到 Python 2.6 时,你可以这样做

deactivate  
c:envs.6activate

解决方案 3:

根据 @alexander 的说法,您可以创建一组如下所示的符号链接。将它们放在路径中包含的某个位置,以便可以轻松调用它们

> cd c:in
> mklink python25.exe c:python25python.exe
> mklink python26.exe c:python26python.exe

只要 c:\bin 或您放置它们的位置在您的路径中,您现在就可以去

> python25

解决方案 4:

从 Python 3.3 开始, Windows 上有官方的Python 启动器( http://www.python.org/dev/peps/pep-0397/ )。现在,您也可以#!pythonX在 Windows 上使用来确定所需的解释器版本。请参阅我的另一条评论中的更多详细信息或阅读 PEP 397。

摘要:启动py script.py中指定的 Python 版本#!或 Python 2(如果#!缺少)。py -3 script.py启动 Python 3。

解决方案 5:

例如对于 3.6 版本,请输入py -3.6。如果您还有 32 位和 64 位版本,则只需输入py -3.6-64py -3.6-32

解决方案 6:

  1. 安装 python

* 目录:\\Python27
* 目录:\\Python36
  1. 环境变量

* `PYTHON2_HOME: C:Python27`
* `PYTHON3_HOME: C:Python36`
* `Path: %PYTHON2_HOME%;%PYTHON2_HOME%Scripts;%PYTHON3_HOME%;%PYTHON3_HOME%Scripts;`
  1. 文件重命名

* C:\\Python27\\python.exe → C:\\Python27\\python2.exe
* C:\\Python36\\python.exe → C:\\Python36\\python3.exe
  1. 点子

* `python2 -m pip install package`
* `python3 -m pip install package`

解决方案 7:

我强烈推荐pyenv-win项目。

在此处输入图片描述

感谢kirankotari的工作,现在我们有了 Windows 版本的 pyenv。

解决方案 8:

一个简单的方法是使用

py -3.8 -m pip install virtualenv-3.8是你的[version number]

安装 virtualenv 后,你可以使用以下命令创建应用程序的虚拟环境

py -3.8 -m virtualenv [your env name]

然后 cd 到 venv,输入activate

这将激活您喜欢的 Python 版本。只需更改版本号即可使用不同的 Python 版本。

解决方案 9:

安装 Python 时,它不会覆盖其他主要版本的安装。因此,安装 Python 2.5.x 不会覆盖 Python 2.6.x,但安装 2.6.6 会覆盖 2.6.5。

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

C:Python2.5Python.exe

对于 Windows 上的 Python 2.5 和

C:Python2.6Python.exe

对于 Windows 上的 Python 2.6,或者

/usr/local/bin/python-2.5

或者

/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命令。

python据我所知,在 Windows 上您无法获得全局命令,所以这不是问题。

解决方案 10:

这是一个简单的技巧:

  1. 进入你想要运行的python版本的目录

  2. 右键单击python.exe

  3. 选择“创建快捷方式

  4. 为该快捷方式指定一个名称以便调用(我使用 p27、p33 等)

  5. 将该快捷方式移动到您的主目录(C:UsersYour name

  6. 打开命令提示符并输入name_of_your_shortcut.lnk(我使用p27.lnk

解决方案 11:

显示你安装的 Python

py -0

使用Python版本来做某事

py -*version*

前任。

py -3.8 venv venv

将在 python 3.8 中创建虚拟环境

笔记:

python -0 
 or
python -3.8

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

解决方案 12:

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.
>>>

解决方案 13:

在 Windows 上运行多个版本的 Python 的最简单方法如下:-

1)从python.org/downloads下载最新版本的python,选择适合您系统的相关版本。

2)运行安装程序并选择将 python 3.x 添加到路径以在 python 3 中自动设置路径(只需单击复选框)。对于 python 2,打开您的 python 2 安装程序,选择您想要的任何首选项,但只需记住将将 python.exe 添加到路径设置为将安装在本地硬盘上,现在只需单击下一步并等待安装程序完成。

3)当两个安装都完成后。右键单击我的电脑--转到属性--选择高级系统设置--转到环境变量--单击系统变量下的新建,并添加一个新系统变量变量名为PY_PYTHON,并将此变量值设置为3。现在单击确定,您就完成了。

4)现在测试一下,打开命令提示符。输入pythonpy后,它会打开python3

5)现在输入exit()退出 python3 。现在输入py -2应该会打开 python 2。

如果这些都不起作用,请重新启动计算机,如果问题仍然存在,请卸载所有内容并重复这些步骤。

谢谢。

解决方案 14:

这是一个简单而优雅的解决方案,可以轻松运行 2 个或更多不同版本的 Python,而无需在 Windows 中使用脚本。无论 Python 是什么版本,它都会从命令提示符启动。

我有 python 版本 3.6.6 和 3.9。环境变量路径正常,并且在安装每个版本的 python 时自动添加。

最好使用“所有用户”选项安装 Python。这样 Python 就会简单地安装到:

C:program filespython36  
C:program filespython39

打开每个 python 文件夹并找到 python.exe 文件。将 python.exe 文件复制并粘贴到相同的文件夹中。然后小心地将副本重命名为:

python36.exe
python39.exe

打开并编辑环境变量。添加 4 个新的用户变量。

C:Program FilesPython36Scripts
C:Program FilesPython36python36.exe    
C:Program FilesPython39Scripts
C:Program FilesProgram39python39.exe 

保存并退出环境变量。

打开一个新的命令提示符终端窗口。要运行一个或另一个版本的 python,请输入:

python36

python39

只需重复上述操作,即可轻松添加更多版本的 Python。简洁优雅。完成。

解决方案 15:

这是一个解决方案:

  1. 首先,安装您想要在电脑上运行的所有版本。https ://www.python.org/

  2. 其次,创建要使用的 Python 版本的虚拟环境。“py [python_version] -m venv [vritual_environment_name]”示例:“py -3.9 -m venv env”

注意:你不需要运行“pip install virtualenv”

解决方案 16:

我有多个版本3.11.3和,您可以通过 powershell 或 cmd 等运行不同版本,只需输入或等3.10.11即可。请确保不要使用或,因为它不起作用。在我看来,这可能是解决您问题最简单的方法。python3.10`python3.11python310python311`

解决方案 17:

使用批处理文件进行切换,在 Windows 7 上简单高效。我用的是这个:

在环境变量对话框(C:\Windows\System32\SystemPropertiesAdvanced.exe)中,

在用户变量部分

  1. 将 %pathpython% 添加到路径环境变量

  2. 删除了对 python pathes 的所有引用

在系统变量部分

  1. 删除了对 python pathes 的所有引用

我为每个 python 安装创建了批处理文件(例如 3.4 x64

名称 = SetPathPython34x64 !!! ToExecuteAsAdmin.bat ;-) 只是为了记住。

文件内容 =

     Set PathPython=C:Python36AMD64Scripts;C:Python36AMD64;C:Tclin

     setx PathPython %PathPython%

为了在版本之间切换,我在管理员模式下执行批处理文件。

!!!!! 这些更改对于随后打开的命令提示符窗口有效。!!!

所以我对此有精确的控制。

解决方案 18:

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

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

C:\用户\名称\应用程序数据\本地\程序\Python\Python36 C:\用户\名称\应用程序数据\本地\程序\Python\Python37

如果我们想使用 cmd 提示符在上述任何特定环境中安装/运行命令,请执行以下操作:

上述每个文件夹中都应该有 python.exe。

因此,当我们尝试运行任何文件时(见图 1)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 文件名更改为其他名称。这样,每次我仅使用时,它都会使用 python3.7python hello.py

解决方案 19:

2023年

假设以前的 Python 是 3.7,它在环境变量中设置了以下路径

C:Program FilesPython37Scripts\n
C:Program FilesPython37\n

现在假设你安装 3.10.*它在环境变量中设置了以下路径

C:Program FilesPython310Scripts\n
C:Program FilesPython310\n

这意味着,当您在 CMD 中输入python之类的命令时,它会添加到 Windows 将查找的路径中,并从第一个匹配的路径中进行选择

如果你输入python,它将返回 python 作为它看到的第一个可执行路径

解决方案

因此,要调用你选择的任何 python,请将路径中的python 可执行文件C:Program FilesPython310重命名为python310,然后从CMDpython310 的形式调用即可使用

python3.10

即如果你在 CMD 中调用普通的Python,它将返回未重命名的另一个版本,在我的情况下是3.7

对于 Pip

只需拨打

pip3.10

pip3.7

解决方案 20:

您可以从 Anaconda Navigator 以图形方式创建不同的 Python 开发环境。我在使用不同的 Python 版本时遇到了同样的问题,因此我使用 Anaconda Navigator 创建了不同的 Python 开发环境,并在每个环境中使用了不同的 Python 版本。

这是此内容的帮助文档。

https://docs.anaconda.com/anaconda/navigator/tutorials/manage-environments/

解决方案 21:

根据@Aman的回答,引入更多细节,针对不同的python版本定义不同的环境变量,例如:

  • 您有E:python2python.exe并且E:python3python.exe同时。

  • 然后,您可以%python2%E:python2python.exe和设置环境变量%python2%E:python3python.exe

  • 最后,当你想要运行python2(或python3)的时候,你可以在命令提示符中直接输入%python2%(或%python3%)。

解决方案 22:

适用于Windows 10的最简单的解决方案:

打开Terminal

> cd Users/usernameAppDataLocalProgramsPython
> copy python36python.exe python36python36.exe
> copy python39python.exe python39python39.exe

现在,python36在终端中运行将启动 python3.6 版本,并将python39启动 python 3.9 版本

解决方案 23:

使用快速环境编辑器 ,您可以将所需 Python 安装的目录推送到顶部。例如,要从 c:\Python27 目录启动 Python,请确保 c:\Python27 目录位于 Path 环境变量中的 c:\Python36 目录之前或之上。根据我的经验,在 Path 环境中找到的第一个 Python 可执行文件正在执行。例如,我已将 MSYS2 与 Python27 一起安装,由于我已将 C:\MSYS2 添加到 C:\Python36 之前的路径中,因此正在执行 C:\MSYS2.... 文件夹中的 python.exe。

解决方案 24:

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

  1. 导航到项目目录,然后运行py -[python version] pip install pipenv,例如:py -3.6 pip install pipenv

  2. 运行pipenv --python [version]以在您想要的 Python 版本中创建虚拟环境。例如:pipenv --python 3.6

  3. 运行pipenv shell以激活您的虚拟环境。

解决方案 25:

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

相关推荐
  政府信创国产化的10大政策解读一、信创国产化的背景与意义信创国产化,即信息技术应用创新国产化,是当前中国信息技术领域的一个重要发展方向。其核心在于通过自主研发和创新,实现信息技术应用的自主可控,减少对外部技术的依赖,并规避潜在的技术制裁和风险。随着全球信息技术竞争的加剧,以及某些国家对中国在科技领域的打压,信创国产化显...
工程项目管理   1565  
  为什么项目管理通常仍然耗时且低效?您是否还在反复更新电子表格、淹没在便利贴中并参加每周更新会议?这确实是耗费时间和精力。借助软件工具的帮助,您可以一目了然地全面了解您的项目。如今,国内外有足够多优秀的项目管理软件可以帮助您掌控每个项目。什么是项目管理软件?项目管理软件是广泛行业用于项目规划、资源分配和调度的软件。它使项...
项目管理软件   1354  
  信创国产芯片作为信息技术创新的核心领域,对于推动国家自主可控生态建设具有至关重要的意义。在全球科技竞争日益激烈的背景下,实现信息技术的自主可控,摆脱对国外技术的依赖,已成为保障国家信息安全和产业可持续发展的关键。国产芯片作为信创产业的基石,其发展水平直接影响着整个信创生态的构建与完善。通过不断提升国产芯片的技术实力、产...
国产信创系统   21  
  信创生态建设旨在实现信息技术领域的自主创新和安全可控,涵盖了从硬件到软件的全产业链。随着数字化转型的加速,信创生态建设的重要性日益凸显,它不仅关乎国家的信息安全,更是推动产业升级和经济高质量发展的关键力量。然而,在推进信创生态建设的过程中,面临着诸多复杂且严峻的挑战,需要深入剖析并寻找切实可行的解决方案。技术创新难题技...
信创操作系统   27  
  信创产业作为国家信息技术创新发展的重要领域,对于保障国家信息安全、推动产业升级具有关键意义。而国产芯片作为信创产业的核心基石,其研发进展备受关注。在信创国产芯片的研发征程中,面临着诸多复杂且艰巨的难点,这些难点犹如一道道关卡,阻碍着国产芯片的快速发展。然而,科研人员和相关企业并未退缩,积极探索并提出了一系列切实可行的解...
国产化替代产品目录   28  
热门文章
项目管理软件有哪些?
云禅道AD
禅道项目管理软件

云端的项目管理软件

尊享禅道项目软件收费版功能

无需维护,随时随地协同办公

内置subversion和git源码管理

每天备份,随时转为私有部署

免费试用