1 votos

¿Utilizar la cláusula IN para seleccionar por atributos en ArcPy?

Estoy trabajando en ArcMap 10.1, tratando de escribir un script para automatizar la selección de una clase de característica. Tengo dos parámetros de entrada:

stop1 = arcpy.GetParameterAsText(0)
stop2 = arcpy.GetParameterAsText(1)

Quiero usar esos paramentros de entrada con una declaración IN. Así que si stop1 y stop2 se encuentran en el campo "Dirección", la expresión sería algo así

expression = ''' "Address" IN '{0}','{1}' '''.format(stop1,stop2)
arcpy.SelectLayerByAttribute_management(layer,"NEW_SELECTION",expression)

He manipulado el expresión ecuación de varias maneras, pero siempre da error.

2voto

UnkwnTech Puntos 21942

Yo probaría esto:

expression = "Address IN ('{0}','{1}')".format(stop1,stop2)

El uso de corchetes para englobar la lista de valores está documentado en Referencia SQL para las expresiones de consulta utilizadas en ArcGIS :

Selecciona un registro si tiene una de varias cadenas o valores en un campo. Cuando va precedido de NOT, selecciona un registro si no tiene una de varias cadenas o valores en un campo. Por ejemplo, esta expresión busca cuatro nombres de estado diferentes:

"STATE_NAME" IN ('Alabama', 'Alaska', 'California', 'Florida')

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