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

Do you need help?

Classe Personaggio program3

c
ciagliangelo (480 points)
3 5 8
in HW3bis by (480 points)
Non riesco a capire nel costruttore della classe Personaggio cosa bisogna fare con il secondo parametro casate
652 views

1 Answer

angelo.spognardi (8170 points)
75 155 224
by (8.2k points)
Il secondo parametro è il cataolo_casate. Quando crei un nuovo personaggio, può darsi che questo personaggio appartenga ad una casata: in quel caso devi aggiungere il personaggio all'istanza Casata corrispondente oppure, se questa non esiste, devi creare una nuova istanza di Casata in cui aggiungere il personaggio e devi aggiungere tale istanza al catalogo_casate preso in input.
f.cocci (650 points)
3 13 17
by (650 points)
Una domanda banale ma il dizionario corrispondente al catalogo casate come lo estraggo da json?
andrea.sterbini (207920 points)
749 1267 2373
by (208k points)
Inizialmente viene passato un dizionario vuoto.

Mano a mano che leggi i personaggi dal JSON, ne ricavi la Casata e se non è già presente la istanzi e la aggiungi al dizionario delle casate
f.cocci (650 points)
3 13 17
by (650 points)
Salve Prof, scusi il ritardo nella risposta ma mi sono buttato a capofitto sull'HW 4-BIS che mi ha rubato un sacco di tempo.

Mi e' chiaro come procedere col catalogo_casate.

Ho notato che leggendo il file json abbiamo charactersName che hanno lo stesso valore ma con attributi differenti.

Come dobbiamo comportarci in questo caso?

Io ho capito che il catalogo_personaggi  deve contenere un'istanza unica per ciascun characterName.

Devo fare una sorta di join degli attributi che riferiscono allo stesso characterName?

Grazie, F.
andrea.sterbini (207920 points)
749 1267 2373
by (208k points)
Sento Spognardi che ha scritto l'esercizio e ti faccio sapere
g
gianluca (1270 points)
1 12 19
by (1.3k points)
edited by
scusate ma nel caso in cui un personaggio non appartiene a nessuna casata ,il parametro casata della classe personaggio sarà una la lista vuota?
f.cocci (650 points)
3 13 17
by (650 points)
"Se la voce del dizionario di un personaggio non ha qualche attributo di
quelli previsti nella classe, tale attributo viene inizializzato a None."

Io l'ho valorizzato a None interpretando alla lettera quanto scritto nella traccia.
g
gianluca (1270 points)
1 12 19
by (1.3k points)
comunque non mi passano i test_10_new_personaggio in nessuno dei due modi a te passano mettendo None ? ho quest errore : "L'attributo casata del personaggio non è di tipo lista"
andrea.sterbini (207920 points)
749 1267 2373
by (208k points)
dal che se ne dovrebbe dedurre che va messa una lista vuota ... provi?
angelo.spognardi (8170 points)
75 155 224
by (8.2k points)

Come abbiamo già scritto in un'altra risposta, ci sono diversi esempi di personaggi minori, senza casata, che hanno lo stesso charactername e diversi actors: in quei casi basta che ci sia almeno un personaggio con quel charactername, NON dovete creare più characters con lo stesso name nel catalogo. Ai fini dell'esercizio, non c'è  preferenza fra i tre diversi personaggi. L'importante è l'univocità dei personaggi e la correttezza dei link fra i vari oggetti.