Ausführen und Debuggen von Python
Diese Schritte bauen auf dem unter Erstellen eines neuen Python-Skripts erstellten Skript auf.
- Klicken Sie auf die Schaltfläche Aktivieren (PythonWin-Werkzeugleiste Standard), um das Skript auf Syntax- und Einzugsfehler zu überprüfen. Falls ein Fehler gefunden wird, wird der Cursor an die entsprechende Stelle gesetzt. Korrigieren Sie die Syntax, und überprüfen Sie sie noch einmal auf Fehler.
- Klicken Sie auf die Schaltfläche Ausführen , um das Dialogfeld Run Script zu öffnen.
- Geben Sie die erforderlichen Parameter für das Skript ein: einen Eingabe-Workspace, eine Clip-Feature-Class, einen Ausgabe-Workspace und eine XY-Toleranz. Sie können eigene Daten angeben oder die Daten des Lernprogramms verwenden. In der Tabelle unten sind die verfügbaren Daten des Lernprogramms aufgeführt. Da die Pfade zu den Daten Leerzeichen enthalten, müssen Sie den gesamten Pfad in Anführungszeichen setzen, wenn Sie diesen als Parameter verwenden.
- Wählen Sie als Debug-Option Step-through in the debugger aus, und klicken Sie anschließend auf "OK".
- Klicken Sie auf die Schaltfläche Step Over . Hierdurch wird die aktuelle Codezeile ausgeführt, die alle angegebenen Module importiert. Anschließend wird zur nächsten Zeile gewechselt.
- Step: Führt die aktuelle Zeile aus und wartet dann in der nächsten Zeile.
- Step Over: Führt die aktuelle Zeile aus. Wenn die Zeile ein Modul, eine Funktion oder einen Methodenaufruf von Python enthält, werden diese ausgeführt.
- Step Out: In einem Modul, einer Funktion oder einer Methode wird der Code ausgeführt, und der Debugger wechselt zurück zu dem Code, der auf das Modul, die Funktion oder die Methode folgt.
- Klicken Sie mehrmals auf die Schaltfläche Step Over, um zur try-Anweisung zu gelangen.
- Klicken Sie im Fenster Stack auf den Knoten "_main_module".
- Klicken Sie auf den Knoten Locals (Dict), um alle lokalen Variablen und die zugehörigen Werte anzuzeigen.
- Klicken Sie mehrmals auf die Schaltfläche Step Over, um den Cursor auf die while-Anweisung zu setzen. Durch die drei ausgeführten Zeilen wird die Liste der verfügbaren Feature-Classes erstellt und die Variable "fc" mit dem ersten Namen gefüllt.
- Klicken Sie im Fenster Watch auf "<New Item>", und geben Sie fc ein. Drücken Sie die EINGABETASTE, um den Ausdruck in den Variablennamen zu ändern. Der Wert der Variablen wird nun angezeigt.
- Klicken Sie zweimal auf die Schaltfläche Step Over, um den Ausgabe-Workspace festzulegen und zur if-Anweisung zu gelangen.
- Klicken Sie auf die Schaltfläche Step Over, um in den Codeblock der if-Anweisung zu wechseln, in dem das Werkzeug Ausschneiden ausgeführt wird.
- Klicken Sie zweimal auf die Schaltfläche Step Over, um das Werkzeug auszuführen und den Namen der nächsten Feature-Class aus der Enumeration von Feature-Class-Namen abzurufen. Achten Sie auf den Wert der Variablen fc im Fenster Watch.
- Klicken Sie auf die Schaltflächen für die Fenster Watch und Stack (Werkzeugleiste Debugging), damit sie geschlossen werden.
- Klicken Sie auf die Schaltfläche Interaktives Fenster . Geben Sie folgenden Code ein, und drücken Sie die EINGABETASTE:
- Klicken Sie auf die Schaltfläche Schließen auf der Werkzeugleiste Debugging, um die Ausführung des Skripts zu beenden.
Pfad | Parameter |
---|---|
"C:\ArcGIS\ArcTutor\GP Service Examples\DriveTimePolygons\ToolData\SanFrancisco.gdb\Transportation" | Eingabe-Workspace |
"D:\ArcGIS\ArcTutor\GP Service Examples\DriveTimePolygons\ToolData\SanFrancisco.gdb\BaseMap\Parks" | Clip-Feature-Class |
"D:\ArcGIS\ArcTutor\GP Service Examples\DriveTimePolygons\Scratch\Scratch.gdb" | Ausgabe-Workspace |
5 | XY-Toleranz |
Die XY-Toleranz ist im Werkzeug Ausschneiden optional. Lassen Sie sie daher aus, wenn die Standard-XY-Toleranz für die einzelnen Eingabe-Feature-Classes verwendet werden soll.
Es werden zwei Fenster geöffnet: das Fenster Watch, in dem der Wert der definierten Ausdrücke angezeigt wird, und das Fenster Stack, in dem der Wert der Variablen in der Aufrufliste des Systems angezeigt wird. (Die Fenster Watch und Stack können durch Klicken auf die entsprechenden Schaltflächen in der Werkzeugleiste Debugging ein- und ausgeblendet werden.) Der Cursor wird in der ersten Zeile des Skripts platziert, die von Python interpretiert wird. In diesem Fall ist dies in der import-Anweisung. Passen Sie die Größe des Python-Anwendungsfensters entsprechend an, damit ausreichen Platz für die neuen Fenster vorhanden ist.
Zusätzlich zur Schaltfläche Step Over enthält die Werkzeugleiste Debugging auch die Schaltfläche Step und die Schaltfläche Step Out .
Alle im interaktiven Fenster festgelegten Variablen, das Skript "multi_clip" sowie die importierten Module werden angezeigt. Überprüfen Sie im Fenster Stack View den Gültigkeitsbereich der Variablen sowie deren Werte und den Inhalt aller verfügbaren Module.
arcpy.GetMessages()
Alle Meldungen des Werkzeugs Ausschneiden werden im interaktiven Fenster ausgegeben. Während einer Debugging-Sitzung können alle Objekte oder Variablen im interaktiven Fenster verwendet werden. Im Fenster können daher Objekte untersucht und Variablen bearbeitet werden.