Instrução
No ArcGIS Pro, a função Python len() pode ser utilizada em cálculos de campo para contar e retornar o número de caracteres em um campo de texto. Por exemplo, a função pode ser usada em expressões para preencher um campo com valores baseados na contagem de caracteres de células em outro campo, o que pode ser útil ao trabalhar com códigos ou acrônimos padronizados.
A imagem abaixo mostra o campo 'Category' contendo acrônimos na tabela de atributos de uma feição no ArcGIS Pro. Neste artigo, um novo campo é preenchido com caracteres adicionais se os valores no campo 'Category' tiverem três ou dois caracteres em vez de quatro.

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.
O bloco de código abaixo mostra a expressão de trabalho completa usando a declaração if... else.
def calculate_field(cat):
if (len(cat) == 3):
return ("A" + cat)
else:
return (cat)
O bloco de código abaixo mostra a expressão de trabalho completa usando o if... Elif... else.
def calculate_field(cat):
if (len(cat) == 3):
return ("A" + cat)
elif (len(cat) == 2):
return ("AA" + cat)
else:
return (cat)

A imagem abaixo mostra o campo 'Code' preenchido com os caracteres adicionais 'A' ou 'AA' se os valores do campo 'Category' tiverem três ou dois caracteres em vez de quatro.

ID do Artigo: 000032254
Obtenha ajuda de especialistas do ArcGIS
Comece a conversar agora