In Python 2.*
, sum (d. itervalues ()) è leggermente meno conciso rispetto allo sum(d.values())
che molti propongono (altri 4 caratteri ;-), ma evita inutilmente di materializzare l'elenco di valori e quindi salva la memoria (e probabilmente il tempo) quando si ha un grande dizionario da trattare.
Come alcuni hanno fatto notare, questo funziona bene, perché Caccio sono interi (una sottoclasse, nello specifico):
>>> False==0
True
>>> False+True
1
quindi, senza bisogno di circonlocutorio if
clausole.
fonte
2009-10-22 15:37:01
+1 per spiegazione. –