Ciao Giacomo,

segnalo questo che è molto intuitivo:

https://grasswiki.osgeo.org/wiki/GRASS_Debugging#Python_debugging_with_pdb

Scrivo sul cellulare, di corsa..

Saluti
Markus


Giacomo Fontanelli <giacomofontanell...@gmail.com> schrieb am Mo., 20. Mai
2019, 11:28:

> Salve a tutti
>
>
> oggi mi sono cimentato per la prima volta con uno script in python per
> automatizzare l'operazione di esportazione di molti raster dal mapset,
> sottoforma di geotiff.
>
> Per la precisione vorrei esportare tutti i raster che iniziano con la
> lettera maiuscola S.
>
>
> Sono partito da un pezzo di codice trovato in rete e l'ho modificato.
>
>
> #!/usr/bin/env python
>
>
> import grass.script as gscript
>
> import sys
>
>
> def main():
>
> gscript.run_command('g.region', flags='p')
>
> rastlist = gscript.read_command('g.list',type='rast')
>
> rastlist1 = rastlist.split(':', 1)[1]
>
> rastlist2 = rastlist1.split('-', 1)[0]
>
> RastListClean=rastlist2.split()
>
> folderOut = '/media/giacomo/Volume/Livorno/outraster/raster'
>
>
> for rasterOut in RastListClean:
>
> if rasterOut.startswith("S"):
>
> folderFileOut = folderOut + "/" + rasterOut + '.tiff'
>
> grass.run_command('r.out.gdal', input=rasterOut, output=folderFileOut,
> format='GTiff')
>
>
> if __name__ == '__main__':
>
> main()
>
>
>
> Ho ottenuto questo messaggio di errore:
>
>
> File "/home/giacomo/Desktop/prova.py", line 9, in main
>
> rastlist1 = rastlist.split(':', 1)[1]
>
> IndexError: list index out of range
>
>
> Non mi aspettavo certo che tutto funzionasse alla prima, non sono ne un
> genio di python tantomeno di GRASS (purtroppo).
>
> La cosa che mi ha lasciato perplesso è che non riesco a capire come
> debuggare il mio codice.
>
> Non trovo una shell pyhon interattiva all'interno di GRASS grazie alla
> quale è possibile testare parti di codice (QGIS ad esempio ce l'ha).
>
> Magari c'è (sicuramente) e io non l'ho ancora trovata.
>
> Sapete darmi qualche dritta?
>
>
> W GRASS!
>
>
> Grazie
>
>
>
>
>
>
> _______________________________________________
> GRASS-Italia mailing list
> GRASS-Italia@listserv.unipr.it
> http://listserv.unipr.it/mailman/listinfo/grass-italia
_______________________________________________
GRASS-Italia mailing list
GRASS-Italia@listserv.unipr.it
http://listserv.unipr.it/mailman/listinfo/grass-italia

Rispondere a