[Sugar-devel] Consulta

Alan Jhonn Aguiar Schwyn alanjas at hotmail.com
Mon Sep 16 21:57:07 EDT 2013


Puede ser problema de rutas..En la documentación:
http://docs.python.org/2/library/functions.html#__import__
recomiendan el  importlib.import_module()

Date: Mon, 16 Sep 2013 22:29:49 -0300
From: fdanesse at gmail.com
To: alanjas at hotmail.com
CC: sugar-devel at lists.sugarlabs.org; walter.bender at gmail.com
Subject: Re: [Sugar-devel] Consulta

Lo que más me extraña es que esto: x = __import__("paquete")Funciona bien en el interprete pero no si está dentro de un archivo.


El 16 de septiembre de 2013 22:17, Flavio Danesse <fdanesse at gmail.com> escribió:

A ver:
Tengo un directorio con archivos .py y un __init__.py o sea un paquete.
Yo quiero importar el paquete como tal para poder hacer cosas como esta:

import JAMediaObjectsJAMediaObjectsPath = JAMediaObjects.__path__[0]
Eso funciona bien desde el interprete y desde un archivo python, pero cuando no se como se llama el paquete y viene dentro de un string, la única forma que he encontrado es hacerlo con __import__(str).


Eso funciona bien con cosas de python y gtk por ejemplo:__import__('os')__import__('gtk')

Pero no funciona con mis propios paquetes.



El 16 de septiembre de 2013 21:52, Alan Jhonn Aguiar Schwyn <alanjas at hotmail.com> escribió:





Yo suelo usar el "imp".
Si tenés un archivo llamado "modulo.py" dentro:
def imprimir(x):
    print x


Desde python podés hacer:
import impmod = imp.load_source('modulo', 'modulo.py')f = getattr(mod, 'imprimir')


y luego la usás como cualquier función:
f(4)
Saludos!
alan
> Date: Mon, 16 Sep 2013 20:36:29 -0400
> From: walter.bender at gmail.com


> To: fdanesse at gmail.com
> CC: sugar-devel at lists.sugarlabs.org
> Subject: Re: [Sugar-devel] Consulta


> 
> Try:
> 
> from importlib import import_module
> 
> x = import_module("package", [])
> 
> 2013/9/16 Flavio Danesse <fdanesse at gmail.com>:


> > En el interprete de python obtengo un paquete de la siguiente forma:
> >
> > x = __import__("paquete")
> >
> > Pero si ese código intento ejecutarlo dentro de un archivo python, no


> > funciona.
> > Funciona solo con paquetes y modulos de python y gtk, pero no con paquetes
> > personalizados.
> >
> > Alguien sabe como se hace?
> >
> > _______________________________________________


> > Sugar-devel mailing list
> > Sugar-devel at lists.sugarlabs.org
> > http://lists.sugarlabs.org/listinfo/sugar-devel


> >
> 
> 
> 
> -- 
> Walter Bender
> Sugar Labs
> http://www.sugarlabs.org
> _______________________________________________


> Sugar-devel mailing list
> Sugar-devel at lists.sugarlabs.org
> http://lists.sugarlabs.org/listinfo/sugar-devel


 		 	   		  

_______________________________________________

Sugar-devel mailing list

Sugar-devel at lists.sugarlabs.org

http://lists.sugarlabs.org/listinfo/sugar-devel







_______________________________________________
Sugar-devel mailing list
Sugar-devel at lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel 		 	   		  
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.sugarlabs.org/archive/sugar-devel/attachments/20130916/52a6affe/attachment.html>


More information about the Sugar-devel mailing list