oll*_*unn 8 python windows version environment-variables double-click
有没有办法控制双击py文件时运行的python版本?从命令行和eclipse等环境中我可以控制运行的版本.但是从双击我不确定.
我安装了2.6和2.7.2.6是针对某些应用程序特定的东西,我想将2.7设为默认值.我已将"C:\ Python27"添加到PATH环境变量中,并且在命令行中运行良好.C:\ path\to\some\file> python someFile.py将在2.7中运行该文件.但是,如果我从资源管理器中双击同一个文件,它将运行2.6.如何让它运行2.7?
在Windows上,您必须修改文件关联,例如通过右键单击Open with ...→→ Choose default program或控制面板的文件夹设置.您可以通过浏览按钮导航到所需的python.exe,从而在多个python安装之间进行选择:

或者,您可以通过键入来更改命令shell中的关联
ftype Python.File="C:\Python27\python.exe" "%1" %*
Run Code Online (Sandbox Code Playgroud)
请注意,这需要管理员权限.如果您的计算机上启用了UAC,请在开始菜单中右键单击cmd并选择Run as administrator.
在freedesktop.org兼容的桌面上,您可以配置与之关联xdg-mime.
在基于debian的发行版上,您可以使用更改默认的python update-alternatives.在所有系统上,您还可以将路径中的python符号链接到正确的实现,如下所示:
$ sudo ln -sf python2.7 /usr/bin/python
Run Code Online (Sandbox Code Playgroud)
如果文件标记为可执行文件,则它也可以直接从命令行或GUI执行,如果它#!以及解释器的名称开头:
#!/usr/bin/env python
Run Code Online (Sandbox Code Playgroud)
要为您的程序选择特定的Python版本,可以使用以下行之一启动Python程序:
#!/usr/bin/env python2.7
#!/usr/bin/python2.7
Run Code Online (Sandbox Code Playgroud)
好的,我找到了Python Launcher,它正是我所追求的。可以在这里找到下载。通过右键单击菜单更改文件关联时,安装此程序为我提供了“Python Launcher for Windows (GUI)”选项。
添加 shebang 行
#!/usr/bin/python2.7
Run Code Online (Sandbox Code Playgroud)
强制脚本在 2.7 中运行。
这非常有用,因为我可以控制正在运行的 python 版本,而用户永远不需要知道。不需要bat 文件,或拖动到快捷方式等。干净整洁,最重要的是,没有用户错误的空间。