[Programación]Paso por valor o referencia? En las funciones en Python

Horacio Castellini horacio9573 en yahoo.com.ar
Jue Sep 20 20:20:12 ART 2012





________________________________
 De: Emiliano Gavilan <emilianogavilan en gmail.com>
Para: programacion en lugro.org.ar 
Enviado: jueves, 20 de septiembre de 2012 8:28
Asunto: Re: [Programación]Paso por valor o referencia? En las funciones en Python
 
El día 20 de septiembre de 2012 07:50, Horacio Castellini
<horacio9573 en yahoo.com.ar> escribió:

> Si un objeto int fuera inmutable como una tupla o un string,, donde el "="
> crea otro objeto inmutable, y a cada copia debería estar asignada a areas de
> memoria distinta, esto debería causar un memory overflow, por ejemplo en un
> código como este...
>
> x=0
> while True:
>     x=x+3

No hay memory overflow porque, aunque el interprete crea un nuevo objeto
en cada iteración, el anterior es borrado ya que queda huérfano,
sin ninguna referencia.
Acá no estoy muy seguro, pero probablemente python use algun tipo de
reference counting en los objetos. Esto permite que se liberen rapidamente
y no como en java, en el cual el garbage collection suele aparecer en los
momentos menos oportunos haciendo que el proceso palme...

----------------------------------

vaya... cada día se aprende algo nuevo... gracias... nunca imaginé que fuera así...
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lugro.org.ar/pipermail/programacion/attachments/20120920/63f64b4e/attachment.htm>


Más información sobre la lista de distribución Programacion