1 votos

Problemas con la calculadora de campo en Python

¿Cómo puedo adaptar la siguiente expresión en la calculadora de campos de ArcGIS? A continuación se muestra el código de python:

import arcpy
fc = "2014_2"
keyField = "ID_segment"
affectedField = "KKN2"
maxVal = 2500
cnt = 1
Value = -1
oldValue = str(maxVal)
queryString = '"' + keyField + '" < ' + "" + oldValue + ""
rows2 = arcpy.UpdateCursor(fc, queryString)
row2 = rows2.next()
while row2:
        iValue = row2.getValue("ID_segment")
        if iValue != Value :
                cnt = 1
                Value = iValue
        else :
                cnt = cnt + 1
        kVal = str(row2.getValue("KKN")) + "/" + str(cnt)   
        print(Value,kVal)
        row2.setValue(affectedField, kVal)
        rows2.updateRow(row2)
        row2 = rows2.next()

enter image description here

enter image description here

1voto

Tangnar Puntos 647

Estos son algunos ejemplos de expresiones de la calculadora de campos . Esto le mostrará para qué sirven las diferentes partes de la calculadora de campo. Como sugirió BritishSteel, no necesitarás el updateCursor ya que la calculadora de campo ya lo hace.

Yo sugeriría comenzar con el esquema de los procesos en el script en cada paso para que usted sepa lo que está tratando de lograr. Una parte de tu código python existente es para iterar a través de las filas, así que puedes eliminar eso.

Una vez que tengas un esquema, puedes averiguar cómo escribir esos pasos en la calculadora de campo.

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