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

Rispondere a