<html>
<head>
<meta content="text/html; charset=windows-1252"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<br>
<br>
Ou entao um poico mais organizado e menos encavalitado<br>
<br>
import re<br>
for number in xrange(2,31+1):<br>
str1=re.sub(r'(_9)',"_%s" % number,
"D:\PATRICIA\DOCUMENTOS\ESTACOES METEOROLOGICAS\DADOS
METEOROLOGICOS\HR\H_1999_1_9.xlsx")<br>
str2=re.sub(r'(_9)',"_%s" %
number,"D:\PATRICIA\IG\QGIS\FWI\HR\ETACOES_HR_1999_1_9")<br>
<font color="#500050">processing.runalg("qgis:</font>joinattributestable",
"D:\PATRICIA\IG\QGIS\DIST_COSTA_etrs89.shp", str1, "EST", "num",
str2)<br>
<br>
<br>
<br>
<br>
<div class="moz-cite-prefix">On 13-05-15 11:44, Jorge Samuel Mendes
de Jesus wrote:<br>
</div>
<blockquote cite="mid:55531D0A.3080500@wur.nl" type="cite">
<meta http-equiv="Content-Type" content="text/html;
charset=windows-1252">
Bom dia<br>
<br>
<br>
No Problem, Eu ontem ja tinha pensado que devia ter feito o
exemplo com o codigo<br>
<br>
Basciamente seria algo assim<br>
<br>
<font color="#500050">processing.runalg(qgis:</font>joinattributestable",
"D:\PATRICIA\IG\QGIS\DIST_COSTA_etrs89.shp",re.sub(r'(_9)',"_%s" %
number, "D:\PATRICIA\DOCUMENTOS\ESTACOES METEOROLOGICAS\DADOS
METEOROLOGICOS\HR\H_1999_1_9.xlsx") , "EST", "num", <br>
re.sub(r'(_9)',"_%s" %
number,"D:\PATRICIA\IG\QGIS\FWI\HR\ETACOES_HR_1999_1_9"))<br>
<br>
O re.sub passa a string ja modificadata para o processing.runalg.
Basicamente troca-se a parte da string original pelo codigo que
faz a substituicao do numero<br>
<br>
Tudo integrado seria:<br>
<br>
import re<br>
for number in xrange(2,31+1):<br>
<font color="#500050">processing.runalg("qgis:</font>joinattributestable",
"D:\PATRICIA\IG\QGIS\DIST_COSTA_etrs89.shp",re.sub(r'(_9)',"_%s" %
number, "D:\PATRICIA\DOCUMENTOS\ESTACOES METEOROLOGICAS\DADOS
METEOROLOGICOS\HR\H_1999_1_9.xlsx") , "EST", "num", <br>
re.sub(r'(_9)',"_%s" %
number,"D:\PATRICIA\IG\QGIS\FWI\HR\ETACOES_HR_1999_1_9"))<br>
<br>
Ista solucao nao e' a mais optimizada mas deve funcionar. <br>
<br>
<br>
Espero que a resposta tenha ajudado, <br>
<br>
Jorge<br>
<br>
<div class="moz-cite-prefix">On 13-05-15 11:30, Patrícia Pécurto
wrote:<br>
</div>
<blockquote
cite="mid:CANqjLrPJf0FdbMA09GD3n7VAZDV2xS22gPd6PpS6sib6Rzw+Yw@mail.gmail.com"
type="cite">
<div dir="ltr">
<div>Bom dia Jorge,</div>
<div><br>
</div>
<div>Desde já agradeço a sua disponibilidade para me ajudar.</div>
<div>Entendi a forma como devo substituir o "_9" no entanto
não entendi como integra-la no código processing.runalg() e
colocar tudo dentro do loop, substituindo a string de
alteração pelo código "re.sub".</div>
<div>Pode por pff. exemplificar para a minha primeira linha do
código:</div>
<div><br>
</div>
<div><font color="#500050">processing.runalg("qgis:</font>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")<br>
</div>
<div><br>
</div>
<div>Obrigada pela atenção,</div>
<div><br>
</div>
<div>Patrícia Fernandes. </div>
<div><br>
</div>
<div><br>
</div>
<div><br>
</div>
</div>
<div class="gmail_extra"><br>
<div class="gmail_quote">2015-05-12 21:28 GMT+01:00 Mendes de
Jesus, Jorge <span dir="ltr"><<a moz-do-not-send="true"
href="mailto:jorge.mendesdejesus@wur.nl" target="_blank">jorge.mendesdejesus@wur.nl</a>></span>:<br>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">Assim de
cabeca, usando regular expressions<br>
<br>
<br>
import re<br>
for number in xrange(2,31+1):<br>
print re.sub(r'(_9)',"_%s" % number,
"D:\PATRICIA\DOCUMENTOS\ESTACOES METEOROLOGICAS\DADOS
METEOROLOGICOS\HR\H_1999_1_9.xlsx")<br>
<br>
Eu reparei que o 9 tem sempre um _ antes<br>
<br>
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.<br>
<br>
No codigo com processing.runalg basta alterar a string de
alteracao pelo codigo re.sub e depois meter tudo dentro do
loop<br>
<br>
Alem tem uma outra idea ????<br>
<br>
Jorge de Jesus<br>
<br>
<br>
<br>
<br>
________________________________<br>
From: <a moz-do-not-send="true"
href="mailto:portugal-bounces@lists.osgeo.org">portugal-bounces@lists.osgeo.org</a>
<<a moz-do-not-send="true"
href="mailto:portugal-bounces@lists.osgeo.org">portugal-bounces@lists.osgeo.org</a>>
on behalf of Patrícia Pécurto <<a
moz-do-not-send="true"
href="mailto:patricia.pecurto@gmail.com">patricia.pecurto@gmail.com</a>><br>
Sent: 12 May 2015 20:57<br>
To: <a moz-do-not-send="true"
href="mailto:Portugal@lists.osgeo.org">Portugal@lists.osgeo.org</a><br>
Subject: [Portugal] Como repetir um um script de python na
consola de python em QGIS<br>
<span><br>
Boa tarde,<br>
<br>
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.<br>
<br>
Obrigada.<br>
<br>
Patrícia Fernandes<br>
<br>
O código é o seguinte:<br>
</span><<a moz-do-not-send="true"
href="http://gis.stackexchange.com/questions/146979/how-to-create-loops-using-processing-algorithm-in-python-console-from-qgis#"
target="_blank">http://gis.stackexchange.com/questions/146979/how-to-create-loops-using-processing-algorithm-in-python-console-from-qgis#</a>><br>
<span><br>
<br>
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")<br>
<br>
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")<br>
<br>
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")<br>
<br>
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")<br>
<br>
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")<br>
<br>
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")<br>
<br>
</span>_______________________________________________<br>
Portugal mailing list<br>
<a moz-do-not-send="true"
href="mailto:Portugal@lists.osgeo.org">Portugal@lists.osgeo.org</a><br>
<a moz-do-not-send="true"
href="http://lists.osgeo.org/mailman/listinfo/portugal"
target="_blank">http://lists.osgeo.org/mailman/listinfo/portugal</a><br>
</blockquote>
</div>
<br>
</div>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<pre wrap="">_______________________________________________
Portugal mailing list
<a moz-do-not-send="true" class="moz-txt-link-abbreviated" href="mailto:Portugal@lists.osgeo.org">Portugal@lists.osgeo.org</a>
<a moz-do-not-send="true" class="moz-txt-link-freetext" href="http://lists.osgeo.org/mailman/listinfo/portugal">http://lists.osgeo.org/mailman/listinfo/portugal</a></pre>
</blockquote>
<br>
<pre class="moz-signature" cols="72">--
ISRIC - World Soil Information
Post: PO box 353, 6700 AJ, Wageningen,
The Netherlands Visiting Address: Droevendaalsesteeg 3, 6708 PB
Wageningen (Bdg. 101),
Office: C.013
Office Phone: +31 (0) 317 4 83715
Mobile Phone: +31 (0) 613 9 06950
OpenPGPKey: 0xA3D0065A</pre>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<pre wrap="">_______________________________________________
Portugal mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Portugal@lists.osgeo.org">Portugal@lists.osgeo.org</a>
<a class="moz-txt-link-freetext" href="http://lists.osgeo.org/mailman/listinfo/portugal">http://lists.osgeo.org/mailman/listinfo/portugal</a></pre>
</blockquote>
<br>
<pre class="moz-signature" cols="72">--
ISRIC - World Soil Information
Post: PO box 353, 6700 AJ, Wageningen,
The Netherlands Visiting Address: Droevendaalsesteeg 3, 6708 PB
Wageningen (Bdg. 101),
Office: C.013
Office Phone: +31 (0) 317 4 83715
Mobile Phone: +31 (0) 613 9 06950
OpenPGPKey: 0xA3D0065A</pre>
</body>
</html>