Re: [QGIS-it-user] loop tra i file di una cartella in uno script processing

2022-02-11 Per discussione Giacomo Fontanelli
Salve
mi hanno fatto comodo le vostre osservazioni, in particolare che lo
statement return provoca l'uscita da ogni loop.

Ho risolto mettendo i risultati che uscivano ad ogni loop da
processing.run('qgis:rastercalculator'...
in una lista (myList) e alla fine

return {self.OUTPUT: myList}

Grazie



Il giorno ven 11 feb 2022 alle ore 10:58 Marco Guiducci <
marco.guidu...@regione.toscana.it> ha scritto:

> Il 10/02/2022 18:26, Andrea Giudiceandrea ha scritto:
> > Il 10/02/2022 12:25, Marco Guiducci ha scritto:
> >> inizia con stampare sulla consolle i valori pathIn e della lista per
> >> vedere se sono corretti
> >
> > Ciao Marco,
> > credo che il tuo consiglio sia lo stesso che ho dato io. Ho capito male?
> >
> >
> si, certo. non avevo visto la tua risposta.
>
> mg
> ___
> QGIS-it-user mailing list
> QGIS-it-user@lists.osgeo.org
> https://lists.osgeo.org/mailman/listinfo/qgis-it-user
>
___
QGIS-it-user mailing list
QGIS-it-user@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-it-user


Re: [QGIS-it-user] loop tra i file di una cartella in uno script processing

2022-02-11 Per discussione Marco Guiducci

Il 10/02/2022 18:26, Andrea Giudiceandrea ha scritto:

Il 10/02/2022 12:25, Marco Guiducci ha scritto:
inizia con stampare sulla consolle i valori pathIn e della lista per 
vedere se sono corretti


Ciao Marco,
credo che il tuo consiglio sia lo stesso che ho dato io. Ho capito male?



si, certo. non avevo visto la tua risposta.

mg
___
QGIS-it-user mailing list
QGIS-it-user@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-it-user


Re: [QGIS-it-user] loop tra i file di una cartella in uno script processing

2022-02-10 Per discussione Giacomo Fontanelli
Ciao Marco

ho fatto come mi dicevi

la parte dello script incaricata di raccogliere i path di ingresso e di
uscita funziona,

il problema sta nel loop all'interno dei file raster in una cartella, che
invece di prendere in considerazione tutti i file si ferma al primo.

Se tolgo l'ultima riga ovvero

return {self.FOLDER: outRas["OUTPUT"]}

lo script prende in considerazione tutti i file, altrimenti si ferma al
primo

Non saprei

Grazie


Il giorno gio 10 feb 2022 alle ore 12:31 Marco Guiducci <
marco.guidu...@regione.toscana.it> ha scritto:

> Il 09/02/2022 19:05, Giacomo Fontanelli ha scritto:
> >
> > pathIn = self.parameterAsString(parameters,
> > self.INPUT,
> > context)
> >
> >
> >
> > quindi stavo pensando di fare un loop nei file della cartella stessa.
> >
> > for myFile in os.listdir(pathIn):
> > #etc
> >
> > Il problema è che invece di fare il loop su tutti i file mi prende in
> > considerazione solo l'ultimo della cartella.
> >
> > Dove sbaglio?
> >
> > grazie
> >
>
> inizia con stampare sulla consolle i valori pathIn e della lista per
> vedere se sono corretti
>
> prova anche a passare pathIn come testo (il nome della dir c:\myadir
> o roba simile) per vedere se va.
>
> marcog
>
>
> ___
> QGIS-it-user mailing list
> QGIS-it-user@lists.osgeo.org
> https://lists.osgeo.org/mailman/listinfo/qgis-it-user
>
___
QGIS-it-user mailing list
QGIS-it-user@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-it-user


Re: [QGIS-it-user] loop tra i file di una cartella in uno script processing

2022-02-10 Per discussione Marco Guiducci

Il 09/02/2022 19:05, Giacomo Fontanelli ha scritto:


        pathIn = self.parameterAsString(parameters,
                                        self.INPUT,
                                        context)



quindi stavo pensando di fare un loop nei file della cartella stessa.

        for myFile in os.listdir(pathIn):
#etc

Il problema è che invece di fare il loop su tutti i file mi prende in 
considerazione solo l'ultimo della cartella.


Dove sbaglio?

grazie



inizia con stampare sulla consolle i valori pathIn e della lista per 
vedere se sono corretti


prova anche a passare pathIn come testo (il nome della dir c:\myadir    
o roba simile) per vedere se va.


marcog


___
QGIS-it-user mailing list
QGIS-it-user@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-it-user


Re: [QGIS-it-user] loop tra i file di una cartella in uno script processing

2022-02-10 Per discussione Giacomo Fontanelli
Ciao Andrea
ho fatto come dicevi
il problema sta nel fatto che nonostante io creda di aver fornito il path
di una cartella in verità mi viene riconosciuto solo l'ultimo file presente
in questa.

Ci devo lavorare.

Grazie

Il giorno mer 9 feb 2022 alle ore 20:53 Andrea Giudiceandrea <
andreaer...@libero.it> ha scritto:

> Ciao Giacomo,
> hai verificato se la variabile pathIn contiene un path valido di una
> cartella (e non di un file) prima dell'inizio del ciclo for?
>
> In questo caso, puoi provare che os.listdir funzioni correttamente
> eseguendo nella console di Python:
>
> for myFile in os.listdir(folderpath):
>  print(myFile)
>
> Se tutto funziona come dovrebbe, allora probabilmente il problema è nel
> codice interno al ciclo for.
>
> A presto.
>
> Andrea
>
>
> Il 09/02/2022 19:05, Giacomo Fontanelli ha scritto:
> > Salve a tutti
> > Sto scrivendo uno script di processing che dovrebbe applicare la
> > stessa operazione matematica a ogni raster che si trova in una
> > qualsiasi cartella.
> ___
> QGIS-it-user mailing list
> QGIS-it-user@lists.osgeo.org
> https://lists.osgeo.org/mailman/listinfo/qgis-it-user
>
___
QGIS-it-user mailing list
QGIS-it-user@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-it-user