Il codice sembrava funzionare, ma per aggiustare qualche problema tecnico e migliorare le performance lo ho stupidamente cambiato e adesso non ricordo più come tornare indietro e cosa avevo fatto di diverso (CNTR-Z non funziona perché ho chiuso Spyder).
Ora tutti i test mi ritornano il problema del tipo:
AssertionError: 5 != 16 : ('The constructed string has different len (5) from the expected one (16)\n'
Dove 5/16 cambiano ogni volta a seconda del file che viene analizzato dalla macchina. Ovviamente il problema risiede nel fatto che la lunghezza della stringa risultante (prodotto finale della funzione) risulta essere diverso dalla lunghezza massima della parola più lunga tra quelle presenti nei file.
Prima non avevo usato len() o altre condizioni, dato che alla stringa finale aggiungo caratteri in ogni index. Quindi se la parola più lunga ha più index (posizioni) a disposizione, rispetto alle altre, allora ci sarà un solo carattere più frequente degli altri in quell'index e di conseguenza viene appeso in automatico alla stringa (non so se mi sono spiegato bene, ma per chi ha risolto questo punto dovrebbe comunque essere chiaro).
Ci sono consigli su come "forzare" il fatto che la stringa finale debba avere la medesima lunghezza della parola più lunga in un file? Oppure, avete ipotesi su cosa io possa aver cambiato senza accorgermene () e che di conseguenza ha fatto nascere questo problema?
Mi rendo conto di non essermi spiegato troppo bene, quindi se ci sono parti che non si sono capite o avete bisogno di più informazioni per potermi aiutare, chiedete pure.