Simple Bucle

nieto_a1 en tsm.es nieto_a1 en tsm.es
Jue Dic 18 17:41:54 CET 2003


Hola,

He probado lo que sugieres y el tiempo es similar al del bucle for. Yo creo que el problema de rendimiento está
relacionado con la creación de los 20000000 objetos del bucle. Al tener que crear tantos objetos termina tardando
tiempo. En java sin embargo no necesita crear objetos porque los enteros no son objetos. He intentado hacer
la prueba en java con objetos Integer y no deja utilizarlos en bucles for.

Saludos.

> Hola
>
> Por cierto, el for de Python no es un for, es un foreach (como el de la STL de
> C++). De modo que la versión Python del bucle es más compleja que la de Java ya
> que entra en juego un iterador y un contenedor (que tiene que crearse en la
> llamada xrange), eso es lo que realmente lleva tiempo; todo eso no tiene que
> hacerlo la versión Java.
>
> Lo justo, en terminos de código, sería comparar esto:
>
> i = 0
> while(i < 20000000):
> i++
>
> y el equivalente en java era;
>
> class test {
> static void main(String argv[]) {
> int i = 0;
> while(i < 20000000) {
> i++;
> }
> }
> }
>
> No lo he probado, pero estoy convencido que la diferencia se debe reducir
> bastante.
>
> Saludos.



Más información sobre la lista de distribución Python-es