Unterscheidende Python-Version bei Verwendung von IDLE mit ArcGIS Pro und ArcGIS 10.x für Desktop-Architektur?

9

Ich habe gerade angefangen, mit Python 3.4.1, das mit ArcGIS Pro 1.0.0 geliefert wird, auf meinem Laptop zu arbeiten, auf dem auch Python 2.7.8 mit ArcGIS 10.3 für Desktop installiert ist, und möchte die Wahrscheinlichkeit einer Ausführung minimieren eine Version von Python, als ich die andere verwenden wollte und musste.

Im Windows Explorer habe ich jetzt zwei Python-Ordner: C: \ Python27 und C: \ Python34, was zu erwarten ist.

Im Windows-Startmenü unter Alle Programme> ArcGIS befindet sich ein Python 2.7-Ordner mit dem IDLE (Python-GUI), den ich häufig zum Starten von IDLE verwende. Daher sollte es in Ordnung sein, ihn von hier aus zu starten. Ich habe getestet und es startet 2.7.8.

Geben Sie hier die Bildbeschreibung ein

Ich hatte erwartet, dass der Python 3.4-Ordner neben Python 2.7 oder möglicherweise unter Alle Programme> ArcGIS> ArcGIS Pro angezeigt wird, aber er befindet sich in einem eigenen Ordner direkt unter Alle Programme. Es enthält einen weiteren IDLE (Python GUI), der wie erwartet 3.4.1 startet.

Geben Sie hier die Bildbeschreibung ein

Wenn ich mir die Liste der Programme im Startmenü anschaue, werden die Dinge jedoch etwas verwirrend, da zwei IDLE-Einträge (Python GUI) zur Auswahl stehen:

Geben Sie hier die Bildbeschreibung ein

Durch Klicken mit der rechten Maustaste auf die einzelnen Elemente und Verwenden der Registerkarte "Allgemein" in ihren Eigenschaften habe ich sie in IDLE (Python GUI) 2.7 bzw. IDLE (Python GUI) 3.4 umbenannt, sodass erneut keine Verwirrung entsteht.

Geben Sie hier die Bildbeschreibung ein

Die andere Möglichkeit, IDLE normalerweise zu starten, besteht darin, mit der rechten Maustaste auf eine * .py-Datei zu klicken und dann Mit IDLE bearbeiten zu wählen. Die Python-Version von IDLE, die ich erhalten werde, ist jetzt jedoch nicht eindeutig. Beim Testen stelle ich fest, dass es 3.4.1 ist.

Geben Sie hier die Bildbeschreibung ein

Gibt es eine Möglichkeit, meine einzige Auswahl von Bearbeiten mit IDLE in diese beiden Optionen umzuwandeln?

  • Bearbeiten mit IDLE 2.7; und
  • Bearbeiten mit IDLE 3.4

Ich bearbeite nie mit PythonWin. Wenn ich also auf zwei Programme beschränkt bin, die * .py-Dateien zum Bearbeiten zugeordnet werden können, opfere ich gerne Bearbeiten mit PythonWin für Bearbeiten mit Python 3.4.

PolyGeo
quelle
1
Warum nicht? PythonWin ist viel besser als IDLE (IMHO) ... Sie sollten in der Lage sein, benutzerdefinierte Aktionen im Explorer hinzuzufügen und "Öffnen mit" auszuwählen. Ich erinnere mich, dass Sie dies unter Windows NT und XP tun, um mehrere Editoren für dieselbe Dateierweiterung auszuwählen . Vielleicht fragen Sie den Superuser nach solchen Dingen. Ich bin mir nicht sicher, wo der Anpassungsdialog in Win 7/8 verschwunden ist.
Michael Stimson
@ MichaelMiles-Stimson PythonWin ist eine zusätzliche Installation und IDLE ist voll für meine Zwecke geeignet, so dass ich Vanille verwenden kann, um Vanille zu behalten.
PolyGeo
Jeder für sein eigenes PolyGeo. Ich mag PythonWin, weil es besseren InteliText, EOL-Marker, Einrückungshandbücher, Syntaxprüfung, inkonsistente Einrückungswarnung und ein interaktives Fenster hat (oder hatte). Ich habe mich daran gewöhnt und habe IDLE seit Jahren nicht mehr angeschaut, daher weiß ich nicht, ob es sich seit ArcGis 9.0 verbessert hat.
Michael Stimson
PythonWin bietet außerdem hervorragende Debugging-Funktionen, einschließlich eines praktischen Überwachungsfensters, in dem Sie schnell die Werte mehrerer Variablen anzeigen können
Stephen Lead,

Antworten:

8

Das wird alles von der Registrierung aus gesteuert.

Sie können die Registrierung öffnen und HKEY_CLASSES_ROOT\\Python.File\\shell\\Edit with Idlediesen Ordner suchen und in so etwas umbenennenEdit with Idle 2.7

Sie können dann einen neuen Registrierungsschlüssel hinzufügen (kopieren Sie diesen beispielsweise in den Editor und speichern Sie ihn als "Idle3.4.reg". Doppelklicken Sie dann, um den Registrierungsschlüssel zu installieren.)

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\""

Es versteht sich von selbst, aber ich werde es trotzdem sagen - spielen Sie nicht in Ihrer Registrierung, es sei denn, Sie fühlen sich wohl, wenn Sie etwas kaputt machen und Probleme haben, es wieder zusammenzusetzen.

KHibma
quelle
9

Dies ist nicht genau das, wonach Sie gefragt haben, aber eine Problemumgehung könnte darin bestehen, beide IDLE-Instanzen zu Ihrer Kontextmenüoption Senden an hinzuzufügen .

  • Öffnen Sie% APPDATA% \ Microsoft \ Windows \ SendTo
  • Wählen Sie> Neu> Verknüpfung
  • Geben Sie den Pfad und den Befehl für IDLE an, z C:\Python27\ArcGIS10.2\pythonw.exe "C:\Python27\ArcGIS10.2\Lib\idlelib\idle.pyw"
  • Wiederholen Sie dies für die andere IDLE-Version

Geben Sie hier die Bildbeschreibung ein

Wenn Sie nun mit der rechten Maustaste auf ein Python-Skript klicken, haben Sie die Möglichkeit, an eine der IDLE-Versionen zu senden:

Geben Sie hier die Bildbeschreibung ein

Stephen Lead
quelle
1
Daran habe ich gedacht. Auf diese Weise können Sie im Kontextmenü entscheiden, welche Version Sie verwenden möchten. Sie können eine Batch-Datei verwenden, um die Pfade für jede Version festzulegen, um sicherzustellen, dass jede Version nur die richtige Python-Installation findet und die andere glücklicherweise nicht kennt, und dann in der letzten Zeile start <idle>% 1 aufrufen ... sehen Sie, wie Sie gehen zuerst, wenn Sie Probleme mit dem Interpreter haben, der die andere Installation findet, machen Sie die Verknüpfung in eine Batch-Datei.
Michael Stimson
1
Als Workaround wird mir das gut tun. Ich werde meine Annahme verbessern, akzeptieren und nur ändern, wenn jemand einen Weg findet, um diesen zusätzlichen Klick auf Senden an zu vermeiden. Vielen Dank!
PolyGeo
3
@PolyGeo Ja, dies kann ohne Senden an erfolgen, ist jedoch etwas komplizierter als diese Methode, da Sie einige Registrierungsbearbeitungen vornehmen müssen. Ein Kontextmenü wird als Kontextmenü bezeichnet. Sie stellen einige Editor-Dienstprogramme her , um sie zu ändern. Ein Tutorial finden Sie hier . Ich würde eine vollständige Antwort posten, aber ich bin faul und technisch gesehen ist es SuperUser-Territorium.
Chris W
Danke @ChrisW Ich habe die Anweisungen unter Ihrem Tutorial-Link befolgt und konnte genau das Kontextmenü erhalten, nach dem ich gesucht habe.
PolyGeo
2

Meine Konfiguration verwendet jetzt ArcGIS 10.4.1 für Desktop und ArcGIS Pro 1.3.

Es sieht so aus, als ob die Installation dieser beiden Architekturen jetzt besser funktioniert, da mir beim Klicken mit der rechten Maustaste auf eine * .py-Datei die Wahl zwischen Bearbeiten mit IDLE oder Bearbeiten mit IDLE (ArcGIS Pro) angeboten wird.

Geben Sie hier die Bildbeschreibung ein

Bearbeiten mit IDLE wird mit Python 2.7.10 geöffnet:

Geben Sie hier die Bildbeschreibung ein

Mit IDLE bearbeiten (ArcGIS Pro) wird mit Python 3.4.4 geöffnet:

Geben Sie hier die Bildbeschreibung ein

PolyGeo
quelle