Please ignore secret bonuses. Secret tests do NOT award bonus. Max hw grade is 30+2 bonus efficiency

Do you need help?

Problema nei test del terzo esercizio del quarto hw

N
Nando (340 points)
4 8 9
in Es3 by (340 points)
recategorized by
Quando replico i test fatti dal tester su dirs o dirs/immagini me li passa tutti ma nel momento in cui mando in play il test mi dice che non trova dirs. Nella funzione ricorsiva faccio chdir path e prima del return torno al padre. Qualcuno ha idee su come risolvere o su quale possa essere il problema?
356 views

2 Answers

l
leoli (2930 points)
0 5 19
by (2.9k points)
Il problema potrebbe essere chdir:

quello che fa è cambiare la cartella di lavoro. Quindi una volta cambiata cartella cambia anche la path per accedere ai file...

Prova o a non usare chdir oppure fai attenzione ai nomi delle path
N
Nando (340 points)
4 8 9
by (340 points)
Non credo sia chdir perché se eseguo io i test fatti dal tester funziona e senza chdir ho il problema dei path più lunghi di 256 caratteri
l
leoli (2930 points)
0 5 19
by (2.9k points)

Con "ritorno al padre" intendi che ritorni alla cartella di partenza?

Prova a scompattare il tutto in una directory con un nome breve

Windows ha un limite di 256 caratteri per i path, quindi unzippate in una directory con percorso corto (ad esempio d:\homework04 )

!!!

andrea.sterbini (207920 points)
749 1267 2373
by (208k points)
Il problema è che os.chdir non segue i link simbolici e sulla VM la directory dirs è un link simbolico.
Usa os.path.realpath per ottenerne il path vero (vedi http://docs.python.org/library/os.path.html#os.path.realpath)
Oppure usa os.listdir per ottenere i nomi dei file contenuti in una directory senza dover entrare nella directory