HOW TO

Ändern von Feldaliasnamen mit Python in ArcGIS Pro

Last Published: April 7, 2023

Zusammenfassung

In ArcGIS Pro enthält das Toolset "Felder" Werkzeuge zum Erstellen und Ändern von Feldern für Geodatabase-Tabellen und Feature-Classes. Derartige Änderungen können durch Ausführen eines Python-Skripts in ArcGIS Pro vorgenommen werden. Der Workflow wird in diesem Artikel beschrieben.

Die folgende Abbildung zeigt die Attributtabelle "Schools_all", die Feldaliasnamen mit Unterstrichen und Kleinbuchstaben enthält.

Die Attributtabelle "Schools_all"

Vorgehensweise

  1. Starten Sie ArcGIS Pro, und öffnen Sie das Projekt.
  2. Um das Python-Fenster zu öffnen, klicken Sie im oberen Menüband auf Analyse, klicken Sie auf den Pfeil der Dropdown-Liste Python, und wählen Sie Python-Fenster aus.
Das Symbol für "Python-Fenster" im Dropdown-Feld "Python" auf der Registerkarte "Analyse"
  1. Geben Sie das folgende Skript im Python-Fenster ein.
    1. Importieren Sie die Systemmodule.
import arcgis
import os
  1. Geben Sie die ArcPy-Funktion an, mit der Erweiterungen überprüft und Ausgaben überschrieben werden.
arcpy.env.overwriteOutput = True
  1. Geben Sie eine Variablensyntax an, um alle Feldnamen des Layers aufzulisten.
<variableName> = arcpy.ListFields('<layerName>')
  1. Geben Sie die ArcPy-Funktion an, mit der die Änderungen auf die Feldaliasnamen angewendet werden. In diesem Beispiel wird der Anfangsbuchstabe in einen Großbuchstaben geändert, und "_" wird durch ein Leerzeichen ersetzt.
print("Changing the field alias to field name by Capitalizing the initial letter")
for field in <variableName>:
    if not field.required:
        arcpy.management.AlterField('<layerName>', field.name, field.name, field.name.rstrip(field.name[-2:]))
        arcpy.management.AlterField('<layerName>', field.name, field.name, field.name.replace("_"," ").title())
        print("Completed")

Der folgende Code-Block umfasst das voll funktionsfähige Skript.

import arcpy
import os
arcpy.env.overwriteOutput=True
infeature=arcpy.GetParameterAsText(0)
fields=arcpy.ListFields('Schools_all')
print("Changing the field alias to field name by Capitalizing the initial letter")
for field in fields:
    if not field.required:
        arcpy.management.AlterField('Schools_all', field.name, field.name,field.name.rstrip(field.name[-2:]))
        arcpy.management.AlterField('Schools_all', field.name, field.name, field.name.replace("_"," ").title())
        print("Completed")

Die folgende Abbildung zeigt die Feldaliasnamen, die mit Python in ArcGIS Pro aktualisiert wurden.

Teil des Python-Skripts und die Ergebnisse in Form der aktualisierten Feldaliasnamen

Artikel-ID: 000029252

Holen Sie sich Unterstützung mit KI

Lösen Sie Ihr Problem schnell mit dem Esri Support AI Chatbot.

Beginnen Sie jetzt mit dem Chatten

Zugehörige Informationen

Weitere Informationen zu diesem Thema erkunden

Unterstützung durch ArcGIS-Experten anfordern

An den technischen Support wenden

Beginnen Sie jetzt mit dem Chatten

Zu Download-Optionen wechseln