[Python] ciclo for dentro un ciclo for
Simone Federici
s.federici a gmail.com
Mer 10 Mar 2010 14:05:53 CET
f1 = lambda n1, n2 : n1 > n2
for val in range(100):
for val2 in range(1000000):
if f1(val, val2):
print val
else:
break
chiaro che cosi dai assunto che conosci il punto di uscita di f1
2010/3/10 Valerio Turturici <turturici.valerio a gmail.com>
> Nicola Ferrari ha scritto:
> > Ma nel caso in cui avessi una quantità enorme di elementi, ci
> > sarebbero problemi di prestazioni...
> >
> La funzione la puoi scrivere cosi
>
> def F1(n1 = 0, n2 = 0):
> return n1 > n2
>
>
> Comunque con questo codice il mio portatile impiega meno di 25s
> (compreso anche il tempo della creazione della lista, che in ogni caso è
> irrisorio):
>
> l = [x for x in range(1000000)]
>
> def F1(n1 = 0, n2 = 0):
> return n1 > n2
>
> for val in range(100):
> for val2 in l:
> if F1(val, val2): print val
>
>
> Cosi sul momento non mi viene in mente nulla per poterlo ottimizzare
> pesantemente, visto che devi abbinare ad ogni elemento di range tutti
> quelli della lista, e quindi fare x*n iterazioni. Ora vado a mettermi
> davanti al termosifone, ho le mani congelate :D
>
> Ciao
> Valerio
> _______________________________________________
> Python mailing list
> Python a lists.python.it
> http://lists.python.it/mailman/listinfo/python
>
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: http://lists.python.it/pipermail/python/attachments/20100310/2182e572/attachment.htm
Maggiori informazioni sulla lista
Python