在CMD中;python“;启动Python3.3;";启动Python2.7,我如何更改它?

在CMD中;python“;启动Python3.3;";启动Python2.7,我如何更改它?,python,windows,python-2.7,python-3.x,path,Python,Windows,Python 2.7,Python 3.x,Path,全新的Python,在我开始胡闹之前,先把东西安装好。我的理解是,Python 2.7和Python 3.3之间存在一些显著的差异/不兼容,尽管这两个版本都使用得很好,所以我认为最好同时安装(在它们自己的安装目录中) 安装时,我使用了新的3.3功能,其中安装程序为我设置路径变量,但是2.7中没有此选项。在安装了这两个版本之后,我尝试了一个快速测试,打开命令提示符,键入python,以打开一个交互式会话,正如我所希望的,它打开了python3.3 我还知道shorterpy命令。然而,当我在命令提

全新的Python,在我开始胡闹之前,先把东西安装好。我的理解是,Python 2.7和Python 3.3之间存在一些显著的差异/不兼容,尽管这两个版本都使用得很好,所以我认为最好同时安装(在它们自己的安装目录中)

安装时,我使用了新的3.3功能,其中安装程序为我设置路径变量,但是2.7中没有此选项。在安装了这两个版本之后,我尝试了一个快速测试,打开命令提示符,键入
python
,以打开一个交互式会话,正如我所希望的,它打开了python3.3

我还知道shorter
py
命令。然而,当我在命令提示符下尝试
py
时,它会显示python 2.7。我可以使用
py-3
来显示3.3,但这使得它比需要的时间更长,而且鉴于我将主要处理3.3版,我希望
py
python
都可以显示一个python 3.3交互式会话

我对Window的路径系统有些熟悉,但我不明白为什么会发生这种情况。如何设置它,以便在windows命令提示符中键入
py
python
时启动python 3.3交互式会话,除非另有规定,例如通过类似
py-2
的方式

谢谢。

“py”是python启动器,您可以通过添加参数
-2
-3
来选择要启动的版本,请参阅下面的帮助说明:

C:\> py -h
Python Launcher for Windows Version 3.3.2150.1013

usage: py [ launcher-arguments ] script [ script-arguments ]

Launcher arguments:

-2     : Launch the latest Python 2.x version
-3     : Launch the latest Python 3.x version
-X.Y   : Launch the specified Python version
e、 例如,在我的机器上,
py
默认启动Python2,添加
-3
使其启动Python3:

C:\> py
Python 2.7.4 |Anaconda 1.5.0 (32-bit)| (default, Apr  9 2013, 12:19:24) [MSC v.1
500 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>

C:\> py -3
Python 3.3.2 (v3.3.2:d047928ae3f6, May 16 2013, 00:03:43) [MSC v.1600 32 bit (In
tel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>
py
是最新版本,它可以启动任何Python版本

在大多数系统上,
py
被配置为在默认情况下启动Python2.7(这是默认情况,Python3.6和更新版本除外,后者将运行Python3)。如果要更改,您有两个选项:

  • 设定一个目标
    PY_PYTHON=3
    将使
    PY
    运行最新的PYTHON 3解释器

  • 在应用程序目录中创建包含以下内容的文件
    py.ini

    [defaults]
    python=3
    
    这与
    PY_PYTHON
    环境变量的效果相同。通常,应用程序目录位于
    C:\Documents and Settings\[username]\application Data
    C:\Users\[username]\AppData\Local\py.ini
    ,具体取决于Windows版本

  • 您还可以添加一个
    #脚本的shebang行(第一行),以便在双击此类文件时告知启动器使用Python 3:

    #! python3
    

    当您安装了多个Python 3解释器时,
    py
    也可以配置为使用特定的Python版本

    我不知道这个+1搭档。我知道如何选择带参数的版本,但目前没有参数的
    py
    默认为2.7版,就像你的一样,而我希望它默认为3.3版,因为我将最多使用3.3版,
    py
    py-3
    稍微短一点。这可能吗?@user2649607,我想将其设置为批处理文件或快捷链接,然后将其固定到任务栏或“开始”菜单。此外,我想使用
    自动热键
    将程序的启动绑定到某个热键上,这样我只需按
    ctrl+shift+p
    (或您喜欢的任何键)即可启动程序,谢谢。我使用了第一个选项,因为它看起来“更干净”。第一行
    #!python3不适合我,为什么?@zhangxaochen这在Win7上适合我:
    #/usr/bin/python3
    回答得不错。有关更多详细信息,请参阅pep-0397,如果我想使用
    python
    而不是
    py
    我的vscode扩展继续尝试使用
    python
    ,它将返回not foundTrivia:默认情况下,如果它没有被环境变量覆盖,ini文件或带有参数的Python启动器将始终首选Python 2而不是Python 3安装(如果两者都可用)。这种情况是因为在源代码中,对版本2的检查很简单。对我来说,情况正好相反
    py
    打开python 3.8.2,而
    python
    打开python 2.7.6