[pyar] Consulta sobre Pattern Registry

Juanjo Conti jjconti en gmail.com
Mie Oct 20 16:35:40 ART 2010


En mi vida vi algo tan parecido a un dict :)

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/
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20101020/c5a53f82/attachment.html>


More information about the pyar mailing list