【问题标题】:How to run different python versions in cmd [duplicate]如何在cmd中运行不同的python版本[重复]
【发布时间】:2014-01-14 04:57:26
【问题描述】:

如何配置 windows 命令对话框以在其中运行不同的 python 版本?例如,当我输入python2 时,它运行python 2.7,当我输入python3 时,它运行python 3.3?我知道如何为一个版本配置环境变量,但两个?我的意思是类似于 Linux 终端。

【问题讨论】:

    标签: python windows python-2.7 python-3.x cmd


    【解决方案1】:

    我还遇到了在我的 Windows 机器上同时使用 python2 和 python3 的案例。以下是我的解决方法:

    1. 下载python2x和python3x,安装。
    2. C:\Python35;C:\Python35\Scripts;C:\Python27;C:\Python27\Scripts 添加到环境变量PATH
    3. 转至C:\Python35python.exe 重命名为python3.exe,也可重命名为C:\Python27,将python.exe 重命名为python2.exe
    4. 重新启动您的命令窗口。
    5. 在命令行中输入python2 scriptname.pypython3 scriptname.py切换你喜欢的版本。

    【讨论】:

    • 您将所有 Python 路径添加到哪个环境变量中?至于重命名python.exe 文件,这样做对进行小升级时有何影响,比如从版本 2.7.x 到 2.7.x+y,通常两者都位于同一 C:\Python27 目录中?
    • 如果我想执行类似“pytest file.py”的东西怎么办?它不像“python2 pytest file.py”
    【解决方案2】:

    我建议使用 Python 3.3 中引入的 Python Launcher for Windows 实用程序。可以直接从作者website手动下载安装,用于Python 2和3的早期版本。

    无论您如何获得它,安装后它都会与所有标准 Python 文件扩展名(即.py,.pyw.pyc.pyo 文件)相关联。您不仅可以在命令提示符处显式控制使用哪个版本,还可以通过在 Python 脚本的开头添加 Linux/Unix-y shebang #!/usr/bin/env pythonX cmets 来逐个脚本控制。

    【讨论】:

    • +1 表示速度更快并包含链接。
    • 太棒了,太棒了,太棒了!!
    【解决方案3】:

    Python 3.3 引入了适用于 Windows 的 Python Launcher,它由安装程序以 py.exepyw.exe 的形式安装到 c:\Windows\ 中。安装程序还会创建与.py.pyw 的关联。然后添加#!python3#!python2 作为第一行。无需向PATH 环境变量添加任何内容。

    更新:只需从官方python.org/download 安装 Python 3.3。它还将添加启动器。然后将第一行添加到具有.py 扩展名的脚本中。然后,您只需在 cmd 行输入 scriptname.py 即可启动脚本,更明确的是 py scriptname.py,也可以双击 scipt 图标。

    py.exe 查找C:\PythonXX\python.exe,其中XX 与计算机上安装的Python 版本相关。假设您将 Python 2.7.6 安装到 C:\Python27,并将 Python 3.3.3 安装到 C:\Python33。 Python 启动器将使用脚本中的第一行来选择一个已安装的版本。默认(即不明确告知版本)是使用计算机上可用的最高版本的 Python 2。

    【讨论】:

    • 请多解释,我听不懂你说的!
    • 您可以随时将您的C:\Python33\python.exe 重命名为C:\Python33\python3.exe。但是,最好明确使用py -3 scriptname.py。最好将信息放入脚本中,然后以统一的方式启动任一版本的脚本。
    • @BlackJack:我明白了。无论如何,您可以创建一个名为python3.exe 的新副本。但是,使用 Windows 的 Python Launcher 更好,没有必要做这些事情。
    • @ConradB 好的。但问题是如何在cmd 中运行不同的 Python 版本。当使用 Windows 的 Python Launcher 时,Python 根本不在路径中——不在系统中,也不在用户路径中。那是因为 py.exe 在c:\Windows 中。如果您不想修改脚本,您可以随时为 Python 3 调用 py -3 myscript.py 或为 Python 2 调用 py -2 myscript.pypy myscript.py 今天默认使用 Python 3 解释器。
    • 引用我自己的话,“我们可以指定次要”-> 这是可能的,有时甚至是必要的。例如,我自己的配置托管了 3.6 和 3.7 版本,并且我有一个(还没有?)与 3.7 兼容的库。我通过指定兼容的次要版本解决了我的问题。
    猜你喜欢
    • 2012-06-17
    • 1970-01-01
    • 1970-01-01
    • 2021-04-04
    • 2013-02-16
    • 1970-01-01
    • 1970-01-01
    • 2016-03-26
    • 2021-04-02
    相关资源
    最近更新 更多