On 10/02/2011 18.02, Gianluca Bargelli wrote:
t1 = Timer(""" reduce(lambda x, y: x*10+y, (1,2,3,4,5,6,7)) """) t2 = Timer(""" "".join([str(i) for i in (1,2,3,4,5,6,7)]) """) "Reduce: 1.58372807503 | List comprehension: 2.46447396278" usando Python 2.6.6 (Linux), qualcuno sa spiegare il perché di tale differenza? :-)
Sicuramente perchè non passi per la conversione in stringa, tagliando fuori tutti i problemi di charset etc... >>> Timer(""" int('%s' * 7 % tuple(range(1,8)))""").timeit() 2.3354565150000006 -- Wyrmskull _______________________________________________ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python