Zusammenfassung
Löscht alle Features oder die ausgewählte Teilmenge der Features aus der Eingabe.
Wenn die Eingabe-Features aus einer Feature-Class stammen, werden alle Zeilen gelöscht. Wenn die Eingabe-Features aus einem Layer ohne Auswahl stammen, werden alle Features gelöscht.
Verwendung
Dieses Werkzeug akzeptiert Layer mit einer Auswahl als Eingabe und löscht nur die ausgewählten Features. Um bestimmte Features aus einer Feature-Class zu löschen, konvertieren Sie zunächst die Feature-Class in einen Layer. Verwenden Sie hierfür das Werkzeug Feature-Layer erstellen oder fügen Sie die Feature-Class in die Anzeige ein. Eine Auswahl kann dann mit dem Werkzeug Layer nach Attributen auswählen oder Layer lagebezogen auswählen sowie durch interaktives Abfragen eines Karten-Layers bzw. Auswählen von Features mithilfe von Auswahlwerkzeugen über die Gruppe Auswahl auf der Registerkarte Karte vorgenommen werden.
Wenn ein Layer eingegeben wird, das keine Auswahl hat, werden alle Features gelöscht. Wenn die Eingabe eine Feature-Class ist, werden alle Features gelöscht.
Hinweis:
Das Löschen aller Zeilen aus einer Feature-Class mit vielen Zeilen kann lange dauern. Wenn Sie alle Zeilen in der Feature-Class löschen möchten, können Sie stattdessen das Werkzeug Tabelle kürzen verwenden. In der Dokumentation für das Werkzeug Tabelle kürzen finden Sie wichtige Warnhinweise zu dessen Verwendung.
Mit diesem Werkzeug werden die Geometrie und die Attribute der Eingabe-Features gelöscht.
Der Umgebungsparameter Ausdehnung wird von diesem Werkzeug beachtet. Es werden nur die Features gelöscht, die sich in der Ausgabeausdehnung der Umgebungseinstellung befinden oder die sie schneiden. Wenn der Eingabe-Layer eine Auswahl enthält, werden nur die ausgewählten Features gelöscht, die sich in der Ausgabeausdehnung befinden oder sich mit ihr schneiden.
Syntax
arcpy.management.DeleteFeatures(in_features)
Parameter | Erklärung | Datentyp |
in_features | Die Feature-Class, das Shapefile oder der Layer, die zu löschende Features enthalten. | Feature Layer |
Abgeleitete Ausgabe
Name | Erklärung | Datentyp |
out_feature_class | Die aktualisierte Feature-Class. | Feature-Layer |
Codebeispiel
Das folgende Skript für das Python-Fenster veranschaulicht, wie das Werkzeug DeleteFeatures im unmittelbaren Modus verwendet wird.
import arcpy
arcpy.env.workspace = "C:/data"
arcpy.CopyFeatures_management("majorrds.shp", "C:/output/output.gdb/majorrds2")
arcpy.DeleteFeatures_management("C:/output/output.gdb/majorrds2")
Das folgende eigenständige Skript veranschaulicht, wie Sie die Funktion DeleteFeatures zum Löschen von Features basierend auf einem Ausdruck verwenden.
# Name: DeleteFeatures_Example2.py
# Description: Delete features from a feature class based on an expression
# Import system modules
import arcpy
# Set environment settings
arcpy.env.workspace = "C:/data/airport.gdb"
# Set local variables
inFeatures = "parcels"
outFeatures = "C:/output/output.gdb/new_parcels"
tempLayer = "parcelsLayer"
expression = arcpy.AddFieldDelimiters(tempLayer, "PARCEL_ID") + " = 'Cemetery'"
# Execute CopyFeatures to make a new copy of the feature class
arcpy.CopyFeatures_management(inFeatures, outFeatures)
# Execute MakeFeatureLayer
arcpy.MakeFeatureLayer_management(outFeatures, tempLayer)
# Execute SelectLayerByAttribute to determine which features to delete
arcpy.SelectLayerByAttribute_management(tempLayer, "NEW_SELECTION",
expression)
# Execute GetCount and if some features have been selected, then
# execute DeleteFeatures to remove the selected features.
if int(arcpy.GetCount_management(tempLayer)[0]) > 0:
arcpy.DeleteFeatures_management(tempLayer)
Umgebungen
- Ausdehnung
Es werden nur die Features gelöscht, die sich in der Ausdehnung befinden oder die sie schneiden.
Lizenzinformationen
- Basic: Ja
- Standard: Ja
- Advanced: Ja