63

我试图找到在两个 python 编译器 2.7 到 3.3 之间切换的最佳方式。我像这样从 cmd 运行 python 脚本:

python ex1.py

在哪里设置窗口环境变量中的“python”环境指向 python 3.3 或 2.7?

我想知道是否有一种简单的方法可以从 cmd 行在两个版本之间切换?

4

8 回答 8

170

不需要“技巧”。Python 3.3 附带 PyLauncher “py.exe”,将其安装在路径中,并将其注册为“.py”扩展处理程序。有了它,脚本顶部的特殊注释会告诉启动器要运行哪个版本的 Python:

#!python2
print "hello"

或者

#!python3
print("hello")

从命令行:

py -3 hello.py

或者

py -2 hello.py

py hello.py它自己会选择最新安装的 Python,或者查阅PY_PYTHON环境变量,例如set PY_PYTHON=3.6.

请参阅适用于 Windows 的 Python 启动器

于 2013-08-05T13:17:02.377 回答
82

对于 Windows 7,我只需将python.exePython 3 文件夹中的路径重命名为python3.exe并将路径添加到环境变量中。使用它,我可以执行python test_script.py并使用 Python 2.7 运行脚本,当我这样做时python3 test_script.py,它会在 Python 3 中运行脚本。

要添加Python 3到环境变量,请按照下列步骤操作 -

  1. 右键单击我的电脑并转到Properties
  2. Advanced System Settings
  3. 单击Environment Variables并编辑PATH并将路径添加到 Python 3 安装目录。

例如,

在此处输入图像描述

于 2013-08-05T12:45:06.717 回答
3

如果您的路径中同时包含 python 2 和 3,您可以在路径中向上移动 Python27 文件夹,以便它首先搜索并执行 python 2。

于 2019-03-17T14:33:45.860 回答
2

它们是您可以在 python 3、虚拟环境或配置默认 python 系统路径中使用 py 命令 (py-launcher) 实现此目的的 3 种方法。出于说明目的,您可能会看到教程https://www.youtube.com/watch?v=ynDlb0n27cw&t=38s

于 2017-05-18T10:35:46.987 回答
0

您使用的是 Python 3+ 版本吗?

  1. 转到您的项目路径
  2. 运行py -[version_number_here]并按 Enter -> 这将打开 Python 的终端(有点)

快乐编码

于 2021-12-20T09:58:27.283 回答
0

有比上述所有方法更简单的方法;您可以使用 PY_PYTHON 环境变量。从 cmd.exe 外壳内部;

对于最新版本的 Python 2

set PY_PYTHON=2

对于最新版本的 Python 3

set PY_PYTHON=3

如果您希望它是永久的,请在控制面板中进行设置。或者在 cmd.exe shell 中使用 setx 而不是 set。

于 2019-07-11T20:49:07.047 回答
0

只需将两者都添加到 env 变量中,然后您必须将想要的版本移到顶部

于 2021-03-15T12:06:27.200 回答
-5

您可以尝试将python3文件夹中的python可执行文件重命名为python3,也就是说,如果它正式命名为python......它对我有用

于 2016-12-31T17:16:02.057 回答