Wenn ich arcgisscripting verwendet habe, um eine speicherinterne Ausgabeebene mit gp.makefeaturelayer zu erstellen, habe ich es in einen Try / Except-Block eingefügt und das gp-Objekt im Except-Teil gelöscht, wenn der Makefeaturelayer fehlschlagen würde. Wenn ich jetzt arcpy verwende, muss ich das Leerlauffenster schließen und erneut öffnen, damit die speicherinterne Ausgabeebene gelöscht wird.
Wie kann ich die Ausgabeebene meines Makefeaturelayer-Tools in einem Try / Except-Block löschen lassen? Vielen Dank.
arcpy
geoprocessing
Justin
quelle
quelle
Antworten:
quelle
Einschließlich
In Ihrem Skript werden alle vorherigen Versionen einer Datei überschrieben, ohne dass "schlechte" Versionen gelöscht werden müssen.
quelle
arcpy.env.overwriteOutput = True
Das Löschen des Feature-Layers im Ausnahmecode-Block funktioniert nicht. Wenn Sie sich im Block mit Ausnahmecode befinden, konnte der Feature-Layer nicht erstellt werden.
Ich empfehle, einen finally-Codeblock hinzuzufügen, der ausgeführt wird, unabhängig davon, ob der try-Block erfolgreich ist oder nicht. Wenn Sie dies tun, sollten Sie sicherstellen, dass der Feature-Layer vorhanden ist, bevor Sie ihn löschen können.
quelle