1 votos

¿Utilizar la calculadora de campo con el analizador de Python y las sentencias if/elif en ArcGIS for Desktop?

He probado todos los fragmentos de abajo para usar el parser de Python en la calculadora de campos y actualizar los valores de un campo llamado type basado en un archivo llamado MamerMN pero en todos ellos recibo un error de sintaxis en la ventana de resultados del geoprocesamiento.

if !MamerMN! <= 0.151560:
    return 1

et

if (!MamerMN! <= 0.151560):
    return 1

et

if (MamerMN <= 0.151560):
    return 1

et

def(MamerMN)
if MamerMN <= 0.151560:
    return 1

et

def(MamerMN)
if (MamerMN <= 0.151560):
    return 1

¿Puede decirme qué estoy haciendo mal?

Actualización

def foo(MamerMN):
  if MamerMN <= 0.151560:
     return 1

2voto

Timothy Clemans Puntos 139

Gracias a Paul

Aquí está la solución: en el cuadro de código de Pre-logic Script:

def foo(MamerMN): 
  if (MamerMN <= 0.200000): 
     return 1
  elif (MamerMN >= 0.200001 and  MamerMN <= 0.400000):
     return 2
  elif (MamerMN >= 0.400001 and  MamerMN <= 0.600000):
     return 3
  elif (MamerMN >= 0.600001 and  MamerMN <= 0.800000):
     return 4
  elif (MamerMN >= 0.800001):
     return 5

y en el cuadro de expresión

foo( !MamerMN! )

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