CÓMO
En ArcGIS Pro, la función len() de Python se puede utilizar en cálculos de campo para contar y devolver el número de caracteres de un campo de texto. Por ejemplo, la función se puede usar en expresiones para rellenar un campo con valores basados en el recuento de caracteres de las celdas de otro campo, lo que puede ser útil cuando se trabaja con códigos o acrónimos estandarizados.
La siguiente imagen muestra el campo "Categoría" que contiene acrónimos en la tabla de atributos de una entidad en ArcGIS Pro. En este artículo, un nuevo campo se rellena con caracteres adicionales si los valores del campo "Categoría" tienen tres o dos caracteres en lugar de cuatro.

Note: The workflow in this article can only be applied to fields with the text data type, as the len() function is used to count the characters in a string.



calculate_field(!<fieldName>!)
def calculate_field(<field>):
if (len(<field>) == <characters>):
return ("<value>" + <field>)
else:
return (<field>)
def calculate_field(<field>):
if (len(<field>) == <characters>):
return ("<value>" + <field>)
elif (len(<field>) == <characters>):
return ("<value>" + <field>)
else:
return (<field>)
Note: The if…elif..else statement is used to include more than a single number of characters from the input field to be counted.
El siguiente bloque de código muestra la expresión de trabajo completa usando la instrucción if... else.
def calculate_field(cat):
if (len(cat) == 3):
return ("A" + cat)
else:
return (cat)
El siguiente bloque de código muestra la expresión de trabajo completa usando la instrucción if... elif... else.
def calculate_field(cat):
if (len(cat) == 3):
return ("A" + cat)
elif (len(cat) == 2):
return ("AA" + cat)
else:
return (cat)

La siguiente imagen muestra el campo 'Código' rellenado con los caracteres adicionales 'A' o 'AA' si los valores del campo 'Categoría' tienen tres o dos caracteres en lugar de cuatro.

Id. de artículo: 000032254
Obtener ayuda de expertos en ArcGIS
Empieza a chatear ahora