我已经安装了的Python 2.7.1和2.6.5版本的Windows上。 我在环境变量添加的Python 2.6.5的唯一路径。 现在,我想运行一个Python脚本x.py
使用Python 2.6.5。 我知道如何使用做cmd
,但它会更方便,只是闲置打开它并使用它里面运行的Run Module
选项。 推测这是通过右键单击在脚本完成,然后将Edit with IDLE
选项,但这都会打开并运行使用Python 2.7.1的脚本。 有没有办法打开和使用Python 2.6.5运行呢?
Answer 1:
在注册表中的标准命令Edit with IDLE
如下:
"C:\Program Files\Python33\pythonw.exe" "C:\Program Files\Python33\Lib\idlelib\idle.pyw" -e "%1"
现在,你可以看到,路径是硬编码到它,所以它只是不能使用不同的Python解释这样的,至少每默认。
然而, PEP 397引入的Python使其能够推出基于家当行不同版本的Python的新的Python发射。 因此,文件开头#!/usr/bin/env python2
将推出当前的Python解释器2,而#!/usr/bin/env python3
将使用Python 3。
利用这些信息,你可以动态地启动IDLE对于给定的Python版本。 例如,这将使用发射器的默认Python版本编辑文件:
C:\Windows\pyw.exe -m idlelib.idle -e "%1"
这会迫使使用Python 3
C:\Windows\pyw.exe -3 -m idlelib.idle -e "%1"
而这将迫使使用Python 2:
C:\Windows\pyw.exe -2 -m idlelib.idle -e "%1"
所以,你需要做的是写一个脚本,主要检查的 Python版本的文件希望与执行,通过手动解析家当线,即(可悲的是发射不会给你这个信息,而无需实际启动脚本呢。我可能会开始拉入请求得到这样的功能为核心)。 然后你可以运行或者使用上述和完成命令的Python 2或Python 3空闲。
你只需要改变Edit with IDLE
命令来执行你的脚本,然后,它会工作。
一个非常简单的替代方法是只需添加其运行Python 2 IDLE另一个注册表项。 所以,你必须Edit with IDLE
和Edit with IDLE (Py2)
什么的。
要做到这一点,只要把下面的一个内部.reg
文件,并执行它:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Python.File\shell\Edit with IDLE (Py2)]
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Python.File\shell\Edit with IDLE (Py2)\command]
@="C:\\Windows\\pyw.exe -2 -m idlelib.idle -e \"%1\""
编辑:我只注意到我写这主要是关于Python 2比Python 3中; 发射器附带的Python 2.7我觉得,所以这将工作一样。 你只需要启动程序的版本specificiers调整到-2.6
和-2.7
或任何你想要的。
Answer 2:
你可以用一些注册表黑客这样做是为了IDLE 2.6默认的(而不是2.7),但是这不是真的,你想要什么,我想,既然那么你就必须扭转这个过程,当你想在2.7测试的东西。 除非别人知道一些其他的方式,以不同的IDLE集成安装到外壳,这里有一些更好的选择:
打开IDLE 2.6第一,只是使用从GUI打开文件对话框。
使用实际支持此功能不同的IDE。 日食带的PyDev将让你运行之间切换口译或保存不同的解释的配置,等等。