HW 4.2 Attribute Error

A
Alessio.Luc (3920 points)
5 16 25
asked Nov 30, 2017 in Es2 by Alessio.Luc (3,920 points)
closed Nov 30, 2017 by Alessio.Luc

Mi trovo di fronte a questo errore, non capisco come mai il grade non riesce a trovare i metodi della classe NodoTris:

test_program2_1                
si applica il metodo tipo() a 4 diversi nodi della classe  NodoTris. 
    I 4 nodi sono radici di alberi da gioco che partono dalle seguenti configurazioni

    [['x', 'o', 'o'], ['x', 'x', 'o'], ['', '', '']]

    [['x', 'o', 'o'], ['x', 'x', 'o'], ['o', 'x', 'o']]

    [['x', 'o', 'o'], ['x', 'x', 'o'], ['o', '', 'x']]

    [['o', 'x', 'x'], ['x', 'o', 'o'], ['o', 'o', 'x']]

    
        error -> AttributeError
        'list' object has no attribute 'tipo'

E tutti gli altri test hanno un comportamento simile...

Grazie in anticipo

163 views
closed with note: Risolto

1 Answer

Best answer
LeonardoEmili (35740 points)
11 65 155
answered Nov 30, 2017 by LeonardoEmili (35,740 points)
selected Nov 30, 2017 by Alessio.Luc

Ciao!

Da quello che dici anche gli altri test verificano un comportamento simile, perciò ti chiedo: hai creato ogni nodo come un'istanza della tua classe NodoTris? Altrimenti il grader fallisce perché prova ad accedere a dei metodi inesistenti.

Facci sapere

Leonardo Emili

A
Alessio.Luc (3920 points)
5 16 25
commented Nov 30, 2017 by Alessio.Luc (3,920 points)
Si, attraverso la funzione gen_tree creo ricorsivamente delle istanze della classe, sbaglio a farlo ricorsivamente?
LeonardoEmili (35740 points)
11 65 155
commented Nov 30, 2017 by LeonardoEmili (35,740 points)
Assolutamente, è giusto così. Tuttavia quell'errore mi fa pensare che il nodo che il grader sta analizzando non è effettivamente un'istanza della classe... Poichè prova a accedere a tale metodo e non lo trova poiché sta analizzando una lista! Prova a fornirci maggiori info così che possiamo aiutarti meglio.
A
Alessio.Luc (3920 points)
5 16 25
commented Nov 30, 2017 by Alessio.Luc (3,920 points)
Ho risolto, grazie! In pratica, nella funzione gen_tree, invece di ritornare l'istanza stessa, ritornavo soltanto la configurazione iniziale e quindi il grade non riceveva le giuste informazioni.
LeonardoEmili (35740 points)
11 65 155
commented Nov 30, 2017 by LeonardoEmili (35,740 points)
Felice che tu abbia risolto !!! :D