ho un dizionario nella forma:medio di tuple
{"a":(1, 0.1) , "b":(2, 0.2) , ...}
Ogni parentesi è una tupla corrispondente a (punteggio, deviazione standard). Come posso prendere la media del solo primo numero in ogni tupla? Ho provato questo:
for word in d:
(score, std) = d[word]
d[word]=float(score),float(std)
if word in string:
number = len(string)
v = sum(score)
return (v)/number
ottengo questo errore:
v = sum(score)
TypeError: 'int' object is not iterable
In realtà non è necessario il list comprehension, 'sum' prenderà qualsiasi iterabile, quindi l'espressione del generatore in' sum (v [0] per v in d.values ()) 'funzionerà senza creare l'elenco intermedio . –
Punto eccellente. Penso solo che costruire l'espressione come questa sia un po 'più chiara. – Mike