Ausführen von Werkzeugen im Python-Fenster
Wenn das Python-Fenster zum ersten Mal geöffnet wird, kann es etwa wie folgt aussehen:
![]() |
Der linke Bereich ist die Haupteingabeaufforderung des Python-Fensters, in dem Python-Befehle ausgeführt werden. Der rechte Bereich stellt das Hilfe- und Syntaxfenster dar, in dem Ausführungsmeldungen beim Ausführen der Werkzeuge und die Hilfe zum aktuellen Werkzeug, zur Funktion oder zur Klasse beim Eingeben von Code angezeigt werden.
Der erste Schritt zum Zugreifen auf Werkzeuge und andere ArcPy-Funktionen im Python-Fenster besteht darin, arcpy. in der Eingabeaufforderung einzugeben, wobei eine Dropdown-Liste sämtlicher ArcPY-Werkzeuge, -Funktionen und -Klassen angezeigt wird. In der Liste kann mit dem Zeiger oder der NACH-OBEN- und NACH-UNTEN-Taste der Tastatur ein Bildlauf durchgeführt werden. Wenn zusätzliche Zeichen eingegeben werden, wird die Dropdown-Liste nur nach den Werkzeugen oder Methoden gefiltert, die den eingegebenen Zeichen entsprechen. Wenn beispielsweise arcpy.addf in das Python-Fenster eingegeben wird, enthält die Dropdown-Liste nur die Werkzeuge oder Methoden, die mit diesen Zeichen beginnen. Wenn der Bildlauf nach unten zu arcpy.AddField_management durchgeführt oder darauf geklickt wird, wird der Name über die TAB-Taste automatisch an der Eingabeaufforderung vervollständigt. Bei Eingabe einer öffnenden Klammer ( wird die Hilfe des Werkzeugs arcpy.AddField_management im Hilfe- und Syntaxfenster angezeigt. Der erste Parameter wird standardmäßig hervorgehoben.
Für Python wird anstelle der Beschriftung der Name des Werkzeugs verwendet. Die Werkzeugbeschriftung wird oben in einem Werkzeugdialogfeld oder im Fenster Katalog angezeigt. Die Werkzeugnamen entsprechen in der Regel den Werkzeugbeschriftungen, enthalten jedoch keine Leerstellen. In Python ist auch der Toolbox-Alias mit dem Werkzeugnamen enthalten.
Sobald alle erforderlichen Parameter eingegeben wurden, drücken Sie die EINGABETASTE, um das Werkzeug auszuführen. Die Ausführungsmeldungen werden im Hilfe- und Syntaxbereich des Python-Fensters angezeigt. Die Textfarbe variiert je nach Meldungstyp. Die Standardtextfarben und deren Bedeutung lauten wie folgt:
Farbe |
Bedeutung |
---|---|
Schwarz |
Normale Informationsmeldungen. |
Rot |
Fehlermeldung. Es wurden keine Ergebnisse erstellt. |
Orange |
Warnmeldung. Möglicherweise liegen unerwartete Ergebnisse vor. |
Sie können diese Farben ändern, indem Sie mit der rechten Maustaste im Hilfe- und Syntaxbereich des Python-Fensters klicken und Format auswählen.
Erforderliche und optionale Parameter
Werkzeugparameter können erforderlich oder optional sein. Optionale Parameter stehen in geschweiften Klammern { }, erforderliche Parameter nicht.
Parametertyp |
Symbol |
Bedeutung |
---|---|---|
Erforderlich |
Erforderlicher Parameter. Diese Parameter sind stets die ersten Parameter im Befehl. Für erforderliche Parameter müssen Sie Werte angeben. |
|
Optional |
{ } |
Optionaler Parameter. Diese Parameter stehen stets hinter den erforderlichen Parametern. Wenn Sie keinen Wert für einen optionalen Parameter eingeben, wird der Standardwert berechnet und verwendet. Der Standardwert eines Parameters ist der Hilfe zum jeweiligen Werkzeug zu entnehmen. |
Werkzeuge können mehrere optionale Parameter aufweisen. Manchmal sind nur einige optionale Parameter eines Werkzeugs von Interesse und müssen festgelegt werden. Es gibt drei Möglichkeiten, einen optionalen Parameter auszulassen bzw. zu übergehen:
- Legen Sie den optionalen Parameter auf einen leeren Satz von Anführungszeichen fest ("").
- Legen Sie den optionalen Parameter auf ein Pfundzeichen in Anführungszeichen fest ("#").
- Geben Sie den zu verwendenden Parameternamen und dessen Werte explizit an (umgehen Sie alle Daten, bis auf den benannten Parameter).
Im folgenden Beispiel wird das Werkzeug Feld hinzufügen verwendet, die Standardwerte des vierten und fünften Parameters werden jedoch anhand der folgenden drei Methoden beibehalten:
# Use empty strings to skip optional parameters
arcpy.AddField_management("c:/data/streets.shp", "Address", "TEXT", "", "", 120)
# Use the # sign to skip optional arguments
arcpy.AddField_management("c:/data/streets.shp", "Address", "TEXT", "#", "#", 120)
# Use the parameter name to bypass unused optional arguments
arcpy.AddField_management("c:/data/streets.shp", "Address", "TEXT", field_length=120)
Standardwerte
- Optionale Parameter weisen einen Standardwert auf. Wenn Sie # (Pfundzeichen) in Anführungszeichen, "" (zwei doppelte Anführungszeichen), '' (zwei einfache Anführungszeichen) oder Python-None für einen optionalen Parameter eingeben, wird der Standardwert des Parameters verwendet. Bei Schlüsselwörtern ist der Standardwert das erste Schlüsselwort in der Liste. Die Standardwerte für Parameter sind in der Hilfe zum jeweiligen Werkzeug angegeben.
- Im Allgemeinen werden einige optionale Parameter übersprungen, um zu dem Parameter zu gelangen, der geändert werden soll.
Dropdown-Listen für Parameter
Dropdown-Listen werden im Python-Fenster bereitgestellt, wenn ein Werkzeug verfügbare Optionen für einen bestimmten Parameter erkennt. Der Parameter identifiziert und filtert die entsprechenden Werte wie im Dialogfeld eines Werkzeugs. Da das Werkzeug AddXY_management beispielsweise nur Punkt-Feature-Classes oder -Layer für die Eingabe-Features akzeptiert, enthält die Dropdown-Liste für diesen Parameter nur verfügbare Punkt-Feature-Layer. Auf ähnliche Weise stellt das Werkzeug DeleteField_management eine Dropdown-Liste mit Feldern basierend auf der Eingabetabelle bereit.
Mehrwertige Parameter
Ein Werkzeugparameter kann je nach Parameter einen einzelnen Wert oder viele Werte akzeptieren. Wenn mehrere Werte akzeptabel sind, kann der Parameterwert als Python-Liste festgelegt werden.
Das Werkzeug Feld löschen akzeptiert mehrere zu löschende Felder. Um mehrere Felder mit Feld löschen zu löschen, geben Sie die Feldnamen als Zeichenfolgen in einer Python-Liste ein.
arcpy.DeleteField_management("c:/base/rivers.shp", ["Type", "Turbidity", "Depth"])
Einige Werkzeuge wie die Overlay-Werkzeuge Union_analysis und Intersect_analysis weisen Parameter auf, die in Form einer Tabelle dargestellt werden, d. h. sie verfügen über mehrere Zeilen mit mehreren Werten für jede Zeile. Bei Union_analysis unterstützt der Parameter Eingabe-Features die Verwendung von Prioritätsrangstufen, um Features mit hoher Genauigkeit beizubehalten. Jeder Eingabe-Feature-Class wird optional ein Rangstufenwert zugewiesen, wobei 1 die höchste Rangstufe darstellt.
Parameter, die in Form einer Tabelle dargestellt werden, werden als Wertetabellen bezeichnet. Wertetabellen werden als eine Python-Liste mit Listen eingegeben. Für den Eingabe-Feature-Parameter in Union_analysis wird die Rangstufe, getrennt durch ein Leerzeichen, nach dem Namen der Feature-Class angegeben. Jedes Rangstufenpaar der Feature-Class ist in einer höheren Liste (daher eine Liste mit Listen) enthalten. Das folgende Beispiel zeigt, wie eine solche Liste erstellt wird. Die Workspace-Umgebung wurde festgelegt, um zu vermeiden, dass der gleiche Workspace nicht für jede Feature-Class wiederholt werden muss.
arcpy.env.workspace = "D:/St_Johns/data.mdb/neighborhoods"
input_list = [["east", 1], ["west", 1], ["south", 1], ["north", 2]]
arcpy.Union_analysis(input_list, "D:/base/data.gdb/land_use")
Regeln für Parameter
Allgemeines:
- Den Parameternamen für alle Eingabe-Datasets wird in_ vorangestellt, den Ausgabe-Datasets wird out_ vorangestellt.
- Das Eingabe-Dataset ist in der Regel der erste Parameter und das Ausgabe-Dataset der letzte erforderliche Parameter. Alle anderen erforderlichen Parameter befinden sich zwischen dem Eingabe- und dem Ausgabe-Dataset.
- Optionale Parameter werden stets hinter den erforderlichen Parametern angegeben.
Aufrufen der Hilfe im Python-Fenster
Nachdem Sie den Namen des Befehls eingegeben haben, gibt es verschiedene Möglichkeiten, Informationen zu dessen Verwendung sowie die werkzeugspezifische Hilfe anzuzeigen:
- Geben Sie den Namen des Werkzeugs an der Eingabeaufforderung gefolgt von einer öffnenden Klammer ein: arcpy.Buffer_analysis(. Dabei werden Informationen zur Verwendung des Werkzeugs und die entsprechende Hilfe im Hilfe- und Syntaxfenster angezeigt.
- Verwenden Sie die in Python integrierte Hilfefunktion, und übergeben Sie den Namen des Werkzeugs, zu dem Sie Hilfe benötigen. Die entsprechende Hilfe wird im Hautbereich von Python angezeigt.
- Verwenden Sie das in Python integrierte Funktionsattribut __doc__ gefolgt von dem Werkzeug, das die Dokumentationszeichenfolge anzeigen soll. Die entsprechende Hilfe wird im Hautbereich von Python angezeigt.
>>> arcpy.Buffer_analysis(
>>> help(arcpy.Buffer_analysis)
>>> print arcpy.Buffer_analysis.__doc__