Verwenden von Feldern und Indizes

Beschriebene Feature-Classes und Tabellen verfügen über eine fields-Eigenschaft, die eine Liste mit Field-Objekten zurückgibt, sowie über eine indexes-Eigenschaft, die eine Liste mit Index-Objekten zurückgibt. Jedes Feld- oder Indexobjekt verfügt über eine Reihe von Eigenschaften, die zum Untersuchen des Objekts verwendet werden können. Alternativ können Sie diese Listen auch mit den Funktionen ListFields und ListIndexes erstellen.

ListFields(dataset, wild_card, field_type)

Gibt eine Liste von Feldern zurück, die im Eingabewert gefunden wurden.

ListIndexes(dataset, wild_card)

Gibt eine Liste von Attributindizes zurück, die im Eingabewert gefunden wurden.

Listenfunktionen

Im folgenden Beispiel wird veranschaulicht, wie Sie eine Liste mit Feldern erstellen und deren Inhalt in einer Schleife durchlaufen, um nach einem bestimmten Feld zu suchen.

import arcpy
fc = 'D:/St_Johns/data.gdb/roads'
# Get a list of field objects
fields = arcpy.ListFields(fc, 'Flag')
for field in fields:
    # Check the field name, perform a calculation when finding the field 'Flag'
    if field.name == 'Flag':
        # Set the value for the field and exit loop
        arcpy.CalculateField_management(fc, 'Flag', '1')
        break

Die Eigenschaften der Feld- und Indexobjekte sind im Folgenden aufgelistet:

EigenschaftErklärung

name

Der Name des Feldes.

aliasName

Der Aliasname des Feldes.

domain

Der Name der zugeordneten Domäne.

editable

True, wenn das Feld bearbeitet werden kann.

isNullable

True, wenn NULL-Werte für das Feld zulässig sind.

required

True, wenn es sich um ein erforderliches Feld handelt.

length

Die Länge des Feldes.

type

SmallInteger, Integer, Single, Double, String, Date, OID, Geometry, BLOB.

scale

Die Anzahl Dezimalstellen des Feldes.

precision

Die Genauigkeit des Feldes.

Feldeigenschaften

EigenschaftErklärung

name

Der Name des Indexes.

isAscending

True, wenn der Index in aufsteigender Reihenfolge sortiert ist.

isUnique

True, wenn der Index eindeutig ist.

fields

Eine Liste von Field-Objekten. Dies entspricht der Verwendung der Feldeigenschaft von Describe fields.

Indexeigenschaften

Tipp:

Mit ListFields und ListIndexes können die Ergebnisse anhand von Name und Typ eingeschränkt werden.