On 2013-09-19 14:08, Piergiuliano Bossi wrote:

def useless(list):
    return [list[i] for i in range(len(list)) if evaluate(list[:i] +
list[i+1:]) == evaluate(list)]

Oserei dire che e' persino un pelo piu' comunicativa cosi', visto che non
devo calcolare una lista e poi sottrarla all'altra.

Se questo codice ha bisogno di essere efficiente puoi anche implementarlo con collections.deque. Vedi la ricetta di delete_nth() negli esempi per un accenno a come fare.

Se non deve essere efficiente (cosa che potrebbe essere, visto che calcoli evaluate(list) per len(list) volte quando ne basterebbe una), come hai fatto tu รจ chiarissimo.


--
Daniele Varrazzo - Develer S.r.l.
http://www.develer.com
_______________________________________________
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python

Rispondere a