4 votos

El script python de la calculadora de campos de Arcmap no devuelve datos

Estoy utilizando ArcMap 10.2 Tengo 4 campos con los que estoy trabajando. muchos tienen entradas duplicadas. para encontrar la única entrada correcta de todos los duplicados estoy tratando de calcular los erróneos. Mi script se ejecuta, pero no obtengo ningún dato en el campo GeoloCode. ¿Por qué?

código de bloque:

def cal(GeoloCode):
    if ((House_Num >= FROM_ADDR) and (House_Num <= TO_ADDR)) :
        return 88
    else:
        return 1

Expresión

cal(!GeolocCode!)

6voto

Örjan Jämte Puntos 3127

Si no quiere utilizar el bloque de código, puede realizar todo dentro del bloque de expresión con un expresión condicional y el hecho de que

x >= y and x <= z equivale a y <= x <= z .

88 if !FROM_ADDR! <= !House_Num! <= !TO_ADDR! else 1

A algunas personas no les gustan los ternarios en python, así que si no tiene sentido para ti a primera vista, ¡únete al club! A mí me gusta usarlo en Calculate Field ya que no hay que preocuparse por el bloque de código.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X