如何在python2和python3中运行程序

如何在python2和python3中运行程序,python,Python,我的机器上当前安装了python 2.6.6和python 3.1.3(Windows Vista 64位) My path变量包含两个版本的目录。如何指定要在哪个python中运行程序。例如,如果我想在Python3中运行一个程序,它可以工作,但是如果我想在python2中运行另一个程序,我会得到一个语法错误。那么如何在cmd中运行python 2程序呢 在我的命令行中键入python,python 3.1.3是唯一显示的 不要只在命令行上键入“python”,而是使用要运行的python.e

我的机器上当前安装了python 2.6.6和python 3.1.3(Windows Vista 64位) My path变量包含两个版本的目录。如何指定要在哪个python中运行程序。例如,如果我想在Python3中运行一个程序,它可以工作,但是如果我想在python2中运行另一个程序,我会得到一个语法错误。那么如何在cmd中运行python 2程序呢


在我的命令行中键入python,python 3.1.3是唯一显示的

不要只在命令行上键入“python”,而是使用要运行的python.exe的完整路径:full_path_to_python_2.6.6\python.exe或full_path_to_python_3.1.3\python.exe应该区分两者。

shell将从左到右读取路径,因此您很可能在python 2.6.6之前定义了python 3.1.3。指定两个版本的完整路径。

您可以在可执行文件名
python2.6
python3
中指定版本,这可能是您需要的。我在2.7和3.2中使用了它。

如果有人在使用jupyter,并且您已经安装了这两种python,您还可以选择使用哪个内核


您还可以使用:“py-main\u version script\u name.py args”

例如:

py-2脚本_name.py参数用于Python2.X

py-3脚本_name.py参数用于Python3.X

要测试两者是否都有效,您可以尝试

>> py -2
Python 2.7.16 (v2.7.16:413a49145e, Mar  4 2019, 01:37:19) [MSC v.1500 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.

>> py -3
Python 3.7.2 (tags/v3.7.2:9a3ffc0492, Dec 23 2018, 23:09:28) [MSC v.1916 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.

但Windows不能做到这一点。在两个安装中都是python.exe。你在想*nix。我也为python3使用了扩展py3,为Python2使用了扩展py2,但它太难维护了。Pythin Launcher(见下面的答案,更好)在Windows中,它们有相同的名称,因此路径中的第一个将始终是使用的;不可复制的