ArcGIS中shp要素类不能直接修改字段的名称,更改字段工具也不支持修改shp要素类。
这次打算使用Python构建一个脚本工具,先新建与原字段名称不同、属性相同的新字段,再使用计算字段工具将原字段的值赋予新字段,最后删除原字段。
构建脚本工具的代码如下
import arcpy
feature_class = arcpy.GetParameterAsText(0)
fields = arcpy.ListFields(feature_class)
for field in fields:
if field.name==arcpy.GetParameterAsText(1) :
newFieldName=arcpy.GetParameterAsText(2)
arcpy.AddField_management(feature_class, newFieldName, field.type, field.precision, field.scale, field.length, newFieldName)
arcpy.CalculateField_management(feature_class, newFieldName, "!"+field.name+"!", "PYTHON3")
arcpy.DeleteField_management(feature_class, field.name)
脚本工具参数设置如图,依次对应代码中的三个参数
运行脚本工具