[Portugal] Como repetir um um script de python na consola de python em QGIS

Mendes de Jesus, Jorge jorge.mendesdejesus wur.nl
Terça-Feira, 12 de Maio de 2015 - 13:28:53 PDT


Assim de cabeca, usando regular expressions


import re
for number in xrange(2,31+1):
      print   re.sub(r'(_9)',"_%s" % number, "D:\PATRICIA\DOCUMENTOS\ESTACOES METEOROLOGICAS\DADOS METEOROLOGICOS\HR\H_1999_1_9.xlsx")

Eu reparei que o 9 tem sempre um _ antes

Este loop faz um print da string com do ficheiro com os valores entre 2 e 31 onde o number 9 e' substituido pelos numeros entre 2 e 31.

No codigo com  processing.runalg basta alterar a string de alteracao pelo codigo re.sub e depois meter tudo dentro do loop

Alem tem uma outra idea ????

Jorge de Jesus




________________________________
From: portugal-bounces  lists.osgeo.org <portugal-bounces  lists.osgeo.org> on behalf of Patrícia Pécurto <patricia.pecurto  gmail.com>
Sent: 12 May 2015 20:57
To: Portugal  lists.osgeo.org
Subject: [Portugal] Como repetir um um script de python na consola de python em QGIS

Boa tarde,

Sou nova utilizadora de linguagem python, e preciso de ajuda na construção de um script que criei e que o resultado final funciona,  é o que eu necessito mas só corre uma vez. A minha dúvida é a seguinte: se eu quiser repetir este código todo mas em vez de ter o nº 9 a bold tiver o mesmo script, substituindo o nº 9 pelos nºs 2, 3, 4,...,31 (inclusive). como devo proceder para não ficar com um código demasiado grande e moroso de construir.

Obrigada.

Patrícia Fernandes

O código é o seguinte:
<http://gis.stackexchange.com/questions/146979/how-to-create-loops-using-processing-algorithm-in-python-console-from-qgis#>


processing.runalg("qgis:joinattributestable", "D:\PATRICIA\IG\QGIS\DIST_COSTA_etrs89.shp", "D:\PATRICIA\DOCUMENTOS\ESTACOES METEOROLOGICAS\DADOS METEOROLOGICOS\HR\H_1999_1_9.xlsx", "EST", "num", "D:\PATRICIA\IG\QGIS\FWI\HR\ETACOES_HR_1999_1_9")

processing.runalg("qgis:selectbyattribute", "D:\PATRICIA\IG\QGIS\FWI\HR\ETACOES_HR_1999_1_9.shp", "H", 1, "NULL", "D:\PATRICIA\IG\QGIS\FWI\HR\ETACOES_HR_1999_1_9.shp")

processing.runalg("qgis:saveselectedfeatures", "D:\PATRICIA\IG\QGIS\FWI\HR\ETACOES_HR_1999_1_9.shp", "D:\PATRICIA\IG\QGIS\FWI\HR\ESTACOES_HR_1999_1_9_SF_Int.shp")

processing.runalg("qgis:selectbyattribute", "D:\PATRICIA\IG\QGIS\FWI\HR\ESTACOES_HR_1999_1_9_SF_Int.shp", "H", 1, "-999.9", "D:\PATRICIA\IG\QGIS\FWI\HR\ESTACOES_HR_1999_1_9_SF_Int.shp")

processing.runalg("qgis:saveselectedfeatures", "D:\PATRICIA\IG\QGIS\FWI\HR\ESTACOES_HR_1999_1_9_SF_Int.shp", "D:\PATRICIA\IG\QGIS\FWI\HR\ESTACOES_HR_1999_1_9_SF.shp")

processing.runalg("saga:inversedistanceweighted", "D:\PATRICIA\IG\QGIS\FWI\HR\ESTACOES_HR_1999_1_9_SF.shp", "H", 0, 2, 0, 1, 100, 0, 0, 8, "-152444.0, 180000.0, -302911.0, 280000.0", 100, "D:\PATRICIA\IG\QGIS\FWI\HR\Python_HR_Viz8_Cell100_9")



Mais informações acerca da lista Portugal