Aplicar un import desde un módulo externo
Jose Manuel Vivo
jmvivoa_c en yahoo.es
Lun Oct 11 19:56:35 CEST 2004
que te parece algo asi:
- c.py:
...
import a
from b import x
a.x =x
v1 = y()
v1.n1.el_metodo_que_sea()
añade al modulo 'a' la referencia a la clase 'x' "al vuelo". esto te puede
funcionar si siempre importas el modulo 'a' de la misma forma (nombre de
modulo):
siempre que importes el modulo 'a' usas 'import a' o 'from a import' en todos
los modulos y no cambies la ruta de acceso al modulo (ej: 'import kkk.a'), en
ese caso no tendras 'x'.
Espero que te valga.
Un saludo.
El Lunes, 11 de Octubre de 2004 19:03, Jose escribió:
> Verás, la idea es no incluir el 'from ...' en a.py.
>
> Imagina:
>
> 1) con wxGlade diseño una ToolBar
> 2) con wxGlade diseño un formulario que incluye la ToolBar del punto 1)
> como un 'Custom Widget'
> 3) hago que wxGlade me genere el código Python correspondiente a la
> ToolBar (b.py) y al formulario (a.py)
> 4) creo un script (c.py) que intenta mostrar el formulario del punto 2)
> 5) obtengo un error ya que el formulario hace referencia a un
> componente (la Toolbar del punto 1) cuyo código no encuentra
> 5) para que me muestre el formulario, he de añadir 'a mano' la cláusula
> 'from ...' en el código generado por wxGlade (en a.py)
> 6) lo ideal (al menos para mí) sería que, de alguna forma, desde 'mi
> código' (c.py) pudiese cargar la infraestructura adicional que necesitan
> los recursos generados por wxGlade, sin tener que retocar 'su código'
>
> Chao,
> Jose
>
> El lun, 11-10-2004 a las 18:46, Jose Manuel Vivo escribió:
> > puedes hacer el import justo antes de crear el objeto, no es necesario
> > que
> >
> > este en el inicio del modulo:
> > > class y:
> > > ...
> >
> > from b import x
> >
> > > self.n1 = x()
> > > ...
> > > ...
Más información sobre la lista de distribución Python-es