【发布时间】: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
如何配置 windows 命令对话框以在其中运行不同的 python 版本?例如,当我输入python2 时,它运行python 2.7,当我输入python3 时,它运行python 3.3?我知道如何为一个版本配置环境变量,但两个?我的意思是类似于 Linux 终端。
【问题讨论】:
标签: python windows python-2.7 python-3.x cmd
我还遇到了在我的 Windows 机器上同时使用 python2 和 python3 的案例。以下是我的解决方法:
C:\Python35;C:\Python35\Scripts;C:\Python27;C:\Python27\Scripts 添加到环境变量PATH。C:\Python35 将python.exe 重命名为python3.exe,也可重命名为C:\Python27,将python.exe 重命名为python2.exe。python2 scriptname.py或python3 scriptname.py切换你喜欢的版本。【讨论】:
python.exe 文件,这样做对进行小升级时有何影响,比如从版本 2.7.x 到 2.7.x+y,通常两者都位于同一 C:\Python27 目录中?
我建议使用 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 来逐个脚本控制。
【讨论】:
Python 3.3 引入了适用于 Windows 的 Python Launcher,它由安装程序以 py.exe 和 pyw.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。最好将信息放入脚本中,然后以统一的方式启动任一版本的脚本。
python3.exe 的新副本。但是,使用 Windows 的 Python Launcher 更好,没有必要做这些事情。
cmd 中运行不同的 Python 版本。当使用 Windows 的 Python Launcher 时,Python 根本不在路径中——不在系统中,也不在用户路径中。那是因为 py.exe 在c:\Windows 中。如果您不想修改脚本,您可以随时为 Python 3 调用 py -3 myscript.py 或为 Python 2 调用 py -2 myscript.py。py myscript.py 今天默认使用 Python 3 解释器。