在将IDLE与ArcGIS Pro和ArcGIS 10.x for Desktop体系结构一起使用时,如何区分Python版本?


9

我刚刚开始在笔记本电脑上使用ArcGIS Pro 1.0.0附带的Python 3.4.1,并且笔记本电脑还装有安装了ArcGIS 10.3 for Desktop的Python 2.7.8,我想将运行的机会降到最低当我打算并需要使用另一个版本时,一个版本的Python。

在Windows资源管理器中,现在有两个Python文件夹:C:\ Python27和C:\ Python34。

在Windows的“开始”菜单上的“所有程序”>“ ArcGIS”下,有一个带有IDLE(Python GUI)的Python 2.7文件夹,我经常使用它来启动IDLE,因此从这里开始就可以了。我测试过,它确实从2.7.8开始。

在此处输入图片说明

我曾期望在Python 2.7旁边或者在“所有程序”>“ ArcGIS”>“ ArcGIS Pro”下看到“ Python 3.4”文件夹,但是它在“所有程序”下的自己文件夹中。它包含另一个IDLE(Python GUI),该IDLE按预期启动3.4.1。

在此处输入图片说明

但是,当我在“开始”菜单上查看程序列表时,事情变得有些混乱,因为有两个IDLE(Python GUI)条目可供选择:

在此处输入图片说明

通过右键单击每个属性并使用其“属性”的“常规”选项卡,我将它们分别重命名为IDLE(Python GUI)2.7和IDLE(Python GUI)3.4,因此不会再造成混乱。

在此处输入图片说明

我通常以另一种方式启动IDLE的方法是,右键单击* .py文件,然后选择Edit with IDLE-但是我将获得的IDLE的Python版本现在是模棱两可的。通过测试,我发现它是3.4.1。

在此处输入图片说明

有没有一种方法可以将我的“带IDLE编辑”选择变成这两个选择?

  • 使用IDLE 2.7编辑;和
  • 使用IDLE 3.4进行编辑

我从不使用PythonWin进行编辑,所以如果我限于可以与* .py文件关联的两个程序来进行编辑,那么我很乐意牺牲使用PythonWin进行编辑,而放弃使用Python 3.4进行编辑。


1
为什么不?PythonWin比IDLE(IMHO)好得多...您应该能够在资源管理器中添加自定义操作,然后选择“打开方式”,我记得在Windows NT和XP上这样做,对于同一文件扩展名可以有多种选择的编辑器。以超级用户也许问诸如此类的事情,我不知道在哪里的自定义对话框已经赢7/8消失了..
迈克尔·史汀生

@ MichaelMiles-Stimson PythonWin是一个附加安装,IDLE完全适合我的目的,因此使用它可以使我保持香草味。
PolyGeo

每个人都有自己的PolyGeo。我喜欢PythonWin,因为它具有(或当时具有)更好的InteliText,EOL标记,缩进指南,语法检查,不一致的缩进警告和交互式窗口。我已经习惯了它,甚至多年来都没有看过IDLE,所以我不知道自ArcGis 9.0起它是否有所改进。
Michael Stimson,2015年

PythonWin还具有强大的调试功能,其中包括方便的“监视”窗口,可让您快速查看多个变量的值
Stephen Lead

Answers:


8

全部由注册表控制。

您可以打开注册表并找到HKEY_CLASSES_ROOT\\Python.File\\shell\\Edit with Idle该文件夹并将其重命名为类似Edit with Idle 2.7

然后,您可以添加一个新的注册表项(例如,将其复制到记事本中并另存为“ Idle3.4.reg”,然后双击以安装该注册表项)

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\Python.File\shell\Edit with IDLE 3.4\command]
@="\"C:\\Python34\\pythonw.exe\" \"C:\\Python34\\Lib\\idlelib\\idle.pyw\" -e \"%1\""

不用说,但是我还是要说 -不要在您的注册表中播放,除非您感到自己可能会破坏某些东西并很难将其重新放在一起,否则请不要在注册表中播放。


9

这并不是您所要的,但是一种解决方法是将两个IDLE实例都添加到“ 发送到”上下文菜单选项中。

  • 打开%APPDATA%\ Microsoft \ Windows \ SendTo
  • 选择>新建>快捷方式
  • 指定IDLE的路径和命令,例如 C:\Python27\ArcGIS10.2\pythonw.exe "C:\Python27\ArcGIS10.2\Lib\idlelib\idle.pyw"
  • 对其他IDLE版本重复

在此处输入图片说明

现在,当您右键单击Python脚本时,将不得不选择“发送到任一IDLE版本”:

在此处输入图片说明


1
就是我的想法,这样您就可以在上下文菜单中确定要使用的版本。您可以使用一个批处理文件来设置每个版本的路径,以确保每个版本仅找到正确的python安装并且非常高兴地不知道另一个版本,然后在最后一行调用start <idle>%1 ...了解如何如果解释器发现其他安装程序时遇到任何问题,请先将其放入批处理文件中。
Michael Stimson

1
作为一种解决方法,这对我很好。我会投票,接受,并且只有在有人提出避免这种额外的“发送到”点击的方式时,才更改我的接受。谢谢!
PolyGeo

3
@PolyGeo是的,无需使用“发送到”即可完成此操作,但是(必须)比此方法要复杂得多,因为您必须进行一些注册表编辑。右键单击菜单称为上下文菜单。它们提供了一些编辑器实用程序来对其进行修改,您可以在此处找到教程。我会发布完整的答案,但我很懒,从技术上讲,这是超级用户领域。
克里斯·W

感谢@ChrisW,我按照您的教程链接中的说明进行操作,因此能够准确地获取我所需要的上下文菜单。
PolyGeo

2

我的配置现在使用ArcGIS 10.4.1 for Desktop和ArcGIS Pro 1.3。

看起来这两种体系结构的安装现在需要更好地照顾,因为当我右键单击* .py文件时,可以选择使用IDLE编辑还是使用IDLE编辑(ArcGIS Pro)。

在此处输入图片说明

使用IDLE编辑使用Python 2.7.10打开:

在此处输入图片说明

使用IDLE编辑(ArcGIS Pro)使用Python 3.4.4打开:

在此处输入图片说明

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.