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

Do you need help?

Notice Board

Per partecipare al corso di Fondamenti di programmazione 2023-24 loggatevi e attivatelo nella vostra pagina dei corsi preferiti. A quel punto il corso appare nel menù personale cliccando sul proprio avatar. Per i materiali degli anni precedenti seguite lo stesso metodo.

To join the Programming/Lab 2023-24 course, log-on and select it on the my courses page. It will appear on the personal menu of your avatar. For earlier years use the same method.

Non trova la directory

f
federico_canalini (630 points)
5 16 22
in Avvisi by (630 points)
Il programma non trova la directory, anche se è scritta perfettamente, ho provato anche a scriverla per intera, ma niente, continua a non trovare la directory:
FileNotFoundError: [Errno 2] No such file or directory: 'tests/test01_enc.txt'
155 views

3 Answers

S
Samuele Triveri (250 points)
0 3 5
by (250 points)
Sei sicuro che program01.py sia nella stessa directory della cartella "tests"? Il percorso passato è relativo, non assoluto.
AL1990 (28120 points)
3 6 142
by (28.1k points)
Perché scrivi il path della directory? I percorsi sono passati come stringhe alla funzione jigsaw tramite i parametri indicati, nella funzione devi usare quei parametri.
mirko1010 (5560 points)
13 33 60
by (5.6k points)
edited by

Se stai facendo i test personali ( if main )  tutte e 4 le voci  devono  essere  in cartella hw  perfattamente messe come scritte e chiamate   appunto similmente a: (tranne il numero che trovi su test_01 .py se corretto per il test che vuoi fare , e  test01_out.txt che verra generato invece)

(jigsaw('tests/test01_in.png', 'tests/test01_exp.png', 20,
                                    'tests/test01_enc.txt', 'output/test01_out.txt'))

Se usi windows  dovresti  usare \  e Non /

Se stai facendo il programma e ti trovi dentro la func saw considera come sopra quello che stai passando ma avranno nome diverso

jigsaw(puzzle_image: str, plain_image: str, tile_size:int, encrypted_file: str, plain_file: str)

leonardo.b (2150 points)
0 0 14
by (2.2k points)

Se usi windows dovresti usare \ e Non /

Windows supporta entrambi i separatori

mirko1010 (5560 points)
13 33 60
by (5.6k points)
edited by
Non sono d' accordo su Windows è buona norma seguire  il backslash ( magari il discorso è  soggettivo  ma in versioni precedenti dal  W10 non è  così supportato così come versioni di python ), se si fanno  solo dei test ,  mentre all interno del programma si deve tenere una apertura universale ,  altra considerazione ,   se il Path  che vuoi tentare di aprire lo vuoi fare in modo assoluto devi necessariamente specificare il disco di lavoro  cosa che non accade per Path relativi . Ma comunque un concetto distante dai Unix like che non si specifica mai  il disco .
leonardo.b (2150 points)
0 0 14
by (2.2k points)
Il supporto del / come separatore è a livello delle winapi, ed è supportato quasi in ogni contesto da oltre 15 anni(ho trovato riferimenti fino a questa data), ma in esercizi come questi e negli scorsi, è preferibile usare /, in modo tale da non avere problemi se si costruiscono percorsi manualmente e si vuole avere codice universale

P.S. puoi usare / anche per percorsi assoluti (e non solo assoluti ma comunque relativi al disco):
dir "C:/"
dir C:\
Hanno lo stesso output, non puoi fare semplicemente "dir C:/" dato che il "/" viene usato come prefisso per gli argomenti nominale dati a dir