8 votos

Cómo crear capacidad en los países

¿Cómo puedo construir una función de solicitud de expresión utilizando la variable dentro de la expresión? Por ejemplo

values = [1, 2, 3]
for j in range( y ):
it = vl.getFeatures( QgsFeatureRequest().setFilterExpression ( u'"field_name" = values[ j ]' ) )

o (también he probado sthing como este)

it = vl.getFeatures( QgsFeatureRequest().setFilterExpression ( u'"field_name" = values[%d]' % j) )

Donde alguien podría estudiar la forma de construir este tipo de expresiones?

8voto

Gonzalo Puntos 500

Como punto de partida para el estudio utilizaría el Libro de cocina de QGIS . Para más lecturas con ejemplos adicionales, consulte los libros que Joseph sugiere en su respuesta.

En cuanto a su problema específico le sugeriría sustitución de cadenas como

it = vl.getFeatures( QgsFeatureRequest().setFilterExpression ( u'"field_name" = {0}'.format(values[j])) )

2voto

Mue Puntos 2469

Hay varios libros disponibles que ayudan a enseñar Python para QGIS. Por nombrar algunos:

"La guía del programador de Pyqgis" por Gary Sherman

"Libro de cocina de programación en Python de QGIS" por Joel Lawhead

"Aprendizaje del análisis geoespacial con Python" por Joel Lawhead

"Dominar QGIS" por Kurt Menke, Luigi Pirelli, Richard Smith Jr & John Van Hoesen

Espero que le sirva de ayuda.

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