En la actualidad : QGIS 3.x
-
Obtener la referencia de la capa:
layer = iface.activeLayer()
-
Seleccionar características por expresión:
layer.selectByExpression("\"ogc_fid\"=482")
Antes de QGIS 2.16
Sigue estos pasos:
-
Obtener la referencia de la capa:
cLayer = iface.mapCanvas().currentLayer()`
-
Obtener un featureIterator a partir de una expresión:
expr = QgsExpression( "\"ogc_fid\"=482" )
it = cLayer.getFeatures( QgsFeatureRequest( expr ) )
-
Construir una lista de Ids de características a partir del resultado obtenido en 2:
ids = [i.id() for i in it]`
-
Seleccione las características con los identificadores obtenidos en 3:
cLayer.setSelectedFeatures( ids )
NOTA: Si desea establecer una expresión con un cadena es necesario añadir comillas a dicho valor, de esta manera:
expr = QgsExpression( " \"name\" = 'my string' " )
Si tu valor de cadena proviene de una variable, puedes hacer esto:
myVariable = 'my string'
expr = QgsExpression( " \"name\" = '{}' ".format(myVariable) )