[pyar] Atributo inmortal
Hystrix
ego en hystrix.com.ar
Mie Jun 20 18:48:17 ART 2012
2012/6/20 Daniel Moisset <dmoisset en machinalis.com>:
>
> Los modulos son singletons, que se "cargan" (se ejecuta el cuerpo del
> modulo sobre un module object) la primera vez que alguien hace import.
> Los otros import que se hacen despues, simplemente enganchan el nombre
> al module object que ya existia.
>
> "del urllib" simplemente borra el nombre urlllib, pero el modulo sigue
> cargado (en particular, se guarda una referencia en
> sys.modules['urllib'])
>
> Si queres descargar el modulo, creo que borrarlo de sys.modules va a
> hacer que se cargue de vuelta en el siguiente import, pero no estoy
> seguro que pasa si tenes mas referencias, habria que experimentar
>
Si, parece que eso funciona::
>>> import sys
>>> del(sys.modules['urllib'])
>>> import urllib
>>> urllib.z
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'module' object has no attribute 'z'
>>>
--
Hystrix
More information about the pyar
mailing list