I numeri, in assoluto, non vogliono dire granché, lordkrandel... Troppa
variabilità di hardware e software. ;-) Piuttosto, esegui il timer di
tutti e tre i metodi sul tuo computer e confronta i risultati, così
quantomeno hai una certa uniformità di base. :-)

Paolo

On Thu, 2011-02-10 at 18:22 +0100, lordkrandel wrote:
> 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
> 
> 
> 

Attachment: signature.asc
Description: This is a digitally signed message part

_______________________________________________
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python

Rispondere a