Metodo per cercare parole lungo le diagonali es1 hw2

g
gianluca (1270 points)
1 12 19
asked Nov 26, 2018 in Es1 by gianluca (1,270 points)
ciao a tutti ho un problema su come ottimizzare la ricerca delle parole lungo le diagonali. il mio primo metodo sicuramente non è dei migliori perche in alcuni test ho problemi di indici fuori range.ora ho pensato a questo: per le diagonali da sx verso dx : partendo dalla parte in basso a sx scorro tutte le diagonali partendo da quella con un solo carattere(spigolo) fino a quello in alto a dx (questo per le diagonali che vanno da sx verso dx).per ogni diagonale creo una stringa e la sua inversa  e un insieme di coordinate (x,y)  .controllo se ci sono parole sia nella stringa normale che inversa.  se si aggiorno l'insieme delle coordinate da eliminare.(stesso procedimento per le diagonali da dx verso sx).

la mia domanda è : c'è un modo per scorrere le diagonali in questo modo senza andare 'out of range'?   chiamare la funzione 'try' ,'except' ,nel momento in cui vado fuori range mi puo aiutare? premettendo che non saprei come usarla come può aiutarmi?. grazie per l'attenzione.
142 views

1 Answer

Best answer
marco.giuliani (23860 points)
1 13 62
answered Nov 26, 2018 by marco.giuliani (23,860 points)
selected Nov 26, 2018 by gianluca
Importa la libreria numpy: Contiene un modulo che fa proprio quello. Il modulo si chiama numpy.diag() e al suo interno devi mettere la matrice formata da lista di liste, con elementi le lettere del diagramma, e, separato da una virgola, un indice. Se l'indice è positivo, ti fa la diagonale partendo dalle lettere della prima riga. Se è negativo, te le fa partendo dalla prima colonna
g
gianluca (1270 points)
1 12 19
commented Nov 26, 2018 by gianluca (1,270 points)
grazie mille ci provo!! ma dove trovo le informazioni sui moduli disponibili di python con le relative informazioni ?sulla documentazione di python (https://docs.python.org/3/library/index.html) numpy non c'è !!
marco.giuliani (23860 points)
1 13 62
commented Nov 26, 2018 by marco.giuliani (23,860 points)
La maggior parte dei moduli li trovi proprio su quel sito. La documentazione di numpy la trovi su https://docs.scipy.org/doc/numpy/reference/routines.html (diag la trovi in "Array creation"). Purtroppo per python sono praticamente infiniti, quindi può capitare spesso di non trovare una documentazione lì. In quei casi ti conviene cercare cosa vuoi fare su internet, e vedere se c'è qualche modulo che lo fa