Ho scritto un po ' di codice che attributo, per ogni elemento di una lista, un punteggio... Per fare questo, ho bisogno di fare questo (semplificato), del codice):
group={1:["Jack", "Jones", "Mike"],
2:["Leo", "Theo", "Jones", "Leo"],
3:["Tom", "Jack"]}
already_chose=["Tom","Mike"]
result=[]
for group_id in group:
name_list = group[group_id]
y=0;x=0
repeat=[]
for name in name_list:
if name in already_chose:
y+=1
elif name not in repeat:
x+=1
repeat.append(name)
score_group=x-y
result.append([group_id,score_group])
output: [[1, 1], [2, 3], [3, 0]]
Il problema è, se leggi questo codice, che non è ottimizzato per un grande enumerazione (più di 7000 gruppi e 100 nomi di gruppi)...
Spero che qualcuno mi può aiutare ? Grazie mille