una consulta tengo 20 capas shp en una carpeta,
a todas estas capas debo añadir un campo en su tabla de atributos, ponerle nombre en la cabecera, formato texto y de 30 digitos.....
despues llenarle a ese campo un link en comun para todos,
alguien me puede ayudar cual seria el script de Python, gracias
LOGRE DE UNA SOLA CAPA.
>>> import arcpy
... arcpy.AddField_management("Capital","ALCALDE","TEXT","","","20")
.................PERO COMO HAGO DE VARIAS Y LLENARLAS?
import arcpy
import os
ws = r"C:\tmp" # ruta al espacio de trabajo que contiene archivos shp
exp = "Hola Mundo" # texto para nuevo campo
AddField_kwargs = {"field_name":"ALCALDE", "field_type":"TEXT", "field_length":30}
CalcField_kwargs = {"field":"ALCALDE", "expression": "'{}'".format(exp), "expression_type":"PYTHON3"}
walk = arcpy.da.Walk(ws, datatype="FeatureClass")
for root, dir, files in walk:
for file in files:
if not file.endswith(".shp"): continue # clase de entidad de filtro solo para archivos shp
path = os.path.join(root, file) # ruta completa al archivo shp
arcpy.AddField_management(path, **AddField_kwargs)
arcpy.CalculateField_management(path, **CalcField_kwargs)