[pyar] Consulta sobre Pattern Registry

Ale peralta.alejandro en gmail.com
Mie Oct 20 16:38:32 ART 2010


2010/10/20 Juanjo Conti <jjconti en gmail.com>

> En mi vida vi algo tan parecido a un dict :)
>
Si, pero fijate que el quiere mantener _una_ instancia del dict, imagino que
para poder acceder al contenido de cualquier instancia.

O estoy confundido Leonardo?


> Juanjo Conti
>
> El oct 20, 2010 8:19 p.m., "Leonardo Vidarte" <lvidarte en gmail.com>
> escribió:
>
>
> Hola lista,
> estaba necesitando una clase Registry y
> luego de buscar un rato en Google y no encontrar nada
> se me ocurrió hacerla de la siguiente forma:
>
> # registry.py
> class Registry:
>    _registry = {}
>    @classmethod
>    def set(cls, key, value):
>        cls._registry[key] = value
>    @classmethod
>    def get(cls, key, default=None):
>        return cls._registry.get(key, default)
>    @classmethod
>    def items(cls):
>        return cls._registry.items()
>    @classmethod
>    def keys(cls):
>        return cls._registry.keys()
>    @classmethod
>    def values(cls):
>        return cls._registry.values()
>
> El uso sería:
>
> # archivo1.py
> from registry import Registry
> Registry.set('foo', 1)
> Registry.set('bar', 2)
>
> # archivo2.py
> from registry import Registry
> if 'foo' in Registry.keys():
>    print Registry.get('foo')
>
> # o también
> print Registry.get('baz', 'No existe')
>
> Esto funciona bien para mis necesidades actuales.
> Mi pregunta es qué les parece la implementación.
> Uds. cómo la harían?
>
> --
> // Leo
> _______________________________________________
> pyar mailing list pyar en python.org.ar
> http://listas.python.org.ar/listinfo/pyar
>
> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>
>
> _______________________________________________
> pyar mailing list pyar en python.org.ar
> http://listas.python.org.ar/listinfo/pyar
>
> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>



-- 
Ale.
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20101020/626cf23f/attachment.html>


More information about the pyar mailing list