Importar constantes segun condicion

Marcos Sánchez Provencio rapto en arrakis.es
Jue Feb 8 16:23:03 CET 2007


A ver esto:
http://pyspanishdoc.sourceforge.net/lib/built-in-funcs.html

Mira __import__

El jue, 08-02-2007 a las 14:31 +0100, Alejandro Novo escribió:
> Hola a todos,
> 
> Tengo un problemilla, os cuento. Dispongo de 2 ficheros con constantes
> definidas, los nombres de las constantes son los mismos pero los valores
> difieren, por ejemplo:
> 
> ImportLocal.py
> -------------------------------
>  DIR = '/usr/home'
> 
> ImportRemote.py
> ----------------------------
> DIR = 'usr/bin/etc'
> 
> A su vez tengo un fichero que me dice cual de los dos ficheros donde estan
> definidas las constantes tengo que coger, por ejemplo:
> 
> Host.py
> ----------------
> GUEST = 'Local'
> 
> Por último tengo otro fichero que dependiendo del valor que tenga la
> constante GUEST de Host.py, importara la constantes DIR de un u otro
> fichero.
> 
> La manera "guarra" que he usado ha sido ... http://pastebin.com/878200 (aquí
> se ve más claro)
> 
>  try:
> >  if GUEST == 'Local':
> >   import ImportLocal
> >   pattern = re.compile('\A__*')
> >   l =  dir(ImportLocal)
> >   for elem in l:
> >    if not pattern.search(elem):
> >     print 'Voy a importar ... ', elem
> >     s = 'from ImportLocal import %s' % elem
> >     exec s
> >  else:
> >   import ImportRemote
> >   pattern = re.compile('\A__*')
> >   l =  dir(ImportRemote)
> >   for elem in l:
> >    if not pattern.search(elem):
> >     print 'Voy a importar ... ', elem
> >     s = 'from ImportRemote import %s' % elem
> >     exec s
> > except:
> >  'No existe!
> >
> ¿se os ocurre otra manera mas elegante de hacerlo? necesito que se pueda
> hacer tanto "Import xxx" como "from xxx import y".
> 
> Muchas gracias!
> _______________________________________________
> Python-es mailing list
> Python-es en aditel.org
> http://listas.aditel.org/listinfo/python-es

------------ próxima parte ------------
_______________________________________________
Python-es mailing list
Python-es en aditel.org
http://listas.aditel.org/listinfo/python-es


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