Problema os.chdir() con i test dell'eserciziario

Tommaso Sgroi (12990 points)
6 11 91
asked Jan 1, 2020 in Eserciziario Python by Tommaso Sgroi (12,990 points)
closed Jan 3, 2020 by Tommaso Sgroi

Sto avendo dei problemi con i test dell'eserciziario, perché anche se la mia funzione restituisce sempre i risultati corretti. I test danno questo errore:

FileNotFoundError: [WinError 2] Impossibile trovare il file specificato: 'D:\\Python uni\\Esercizi esame\\es71- da fare\\t4\\t4'

Questo però non accade se sono io a lanciare i test dalla shell, e non tramite test.py. Il modo per spostarmi da cartella a cartella è quello di utilizzare os.chdir(path).                                                                                                                              Guardando nella soluzione ho visto che è stata risolta senza uso di os.chdir, ma tramite fn = "{}/{}".format(dir, f), che va a sostituire il percorso file... Però questa  cosa non è stata ne accennata a lezione e nemmeno vista a laboratorio... 

Come posso risolvere l'esercizio con l'uso degli argomenti svolti a lezione??

L'esercizio è il numero 3 con il tag ricerca file.

479 views
closed with note: Problema risolto

1 Answer

andrea.sterbini (172780 points)
513 935 1789
answered Jan 1, 2020 by andrea.sterbini (172,780 points)
Non conviene mai spostarsi nella gerarchia di directory, perchè bisogna anche ricordarsi in che livello ci si trova e ricordarsi di tornare "su".
Meglio concatenare la stringa del path per raggiungere il punto che si desidera senza spostarsi
Tommaso Sgroi (12990 points)
6 11 91
commented Jan 2, 2020 by Tommaso Sgroi (12,990 points)
Infatti io prima di "immergermi" nella ricorsione, metto in una variabile il path della cartella di partenza tramite os.getcwd(). In questo modo finita la ricorsione tramite os.chdir(path cartella di partenza) posso tornare al'inizio. Però non funziona.

Utilizzerò il suo consiglio professore, grazie mille !