【发布时间】:2013-08-06 04:09:52
【问题描述】:
我正在尝试找到在两个 python 编译器(2.7 到 3.3)之间切换的最佳方式。 我像这样从 cmd 运行 python 脚本:
python ex1.py
在哪里设置窗口环境变量中的“python”环境指向 python 3.3 或 2.7?
我想知道是否有一种简单的方法可以从 cmd 行在两个版本之间切换?
【问题讨论】:
标签: python windows command-line cmd
我正在尝试找到在两个 python 编译器(2.7 到 3.3)之间切换的最佳方式。 我像这样从 cmd 运行 python 脚本:
python ex1.py
在哪里设置窗口环境变量中的“python”环境指向 python 3.3 或 2.7?
我想知道是否有一种简单的方法可以从 cmd 行在两个版本之间切换?
【问题讨论】:
标签: python windows command-line cmd
对于 Windows 7,我只需将 Python 3 文件夹中的 python.exe 重命名为 python3.exe 并将路径添加到环境变量中。使用它,我可以执行 python test_script.py 并且脚本使用 Python 2.7 运行,当我执行 python3 test_script.py 时,它会在 Python 3 中运行脚本。
要将Python 3 添加到环境变量中,请按照以下步骤操作 -
Properties。Advanced System Settings。Environment Variables 并编辑PATH 并将路径添加到您的Python 3 安装目录。例如,
【讨论】:
不需要“技巧”。 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.
【讨论】:
#!/usr/bin/env python2或#!/usr/bin/python2。但是,#!/usr/bin/python 不会让 PyLauncher 使用 Python 2。
您可以尝试将python3文件夹中的python可执行文件重命名为python3,也就是说如果它正式命名为python......它对我有用
【讨论】:
它们是您可以在 python 3、虚拟环境中使用 py 命令 (py-launcher) 或配置默认 python 系统路径的 3 种方法。为了便于说明,您可以查看教程https://www.youtube.com/watch?v=ynDlb0n27cw&t=38s
【讨论】:
如果您的路径中同时包含 python 2 和 3,您可以在路径中向上移动 Python27 文件夹,以便它首先搜索并执行 python 2。
【讨论】:
有比上述所有方法更简单的方法;您可以使用 PY_PYTHON 环境变量。 从 cmd.exe shell 内部;
对于最新版本的 Python 2
set PY_PYTHON=2
对于最新版本的 Python 3
set PY_PYTHON=3
如果您希望它是永久的,请在控制面板中进行设置。或者在 cmd.exe shell 中使用 setx 而不是 set。
【讨论】:
py?
只需将两者都添加到环境变量中,然后您必须将所需的版本移到顶部
【讨论】:
您使用的是 Python 3+ 版本吗?
py -[version_number_here] 并按 Enter
-> 这将打开 Python 的终端(有点)快乐编码?
【讨论】: