[pyar] sobre import en paquetes al mismo nivel
Joaquín Sorianello
listas en joac.com.ar
Jue Jun 6 17:34:19 ART 2013
2013/6/6 anthony <asotolongo en uci.cu>
> Hola Colegas les escribo para hacerles una pregunta sobre carga de
> paquetes con import
>
> tengo dos directorios que son paquetes con su respectivo __init__.py y
> están al mismo nivel ambos.
>
> ejemplo:
> proyecto
> paquete1
> paquete2
>
> tengo una clase dentro de paquete1 que necesita de una función o clase en
> paquete2
>
> #clase que esta dentro de paquete1
> import paquete2.algo
>
> class clase1():
> def __init__(self):
> self.datos=algo()
>
>
>
> #paquete2
> def algo()
> print 'hola'
>
>
> el tema es que me dice que el siguiente error
>
> import paquete2.algo
> ImportError: No module named algo
>
>
> entiendo el error, lo que no se es como resolver el tema... , es decir
> como llamar una función o clase desde un paquete que están al mismo nivel
>
>
Yo me leeria: http://www.python.org/dev/peps/pep-0328/ que habla justamente
de eso:
en mi ejemplo me armé:
☁ imports tree
.
|-- paquete
| |-- bar
| | `-- __init__.py
| |-- foo
| | `-- __init__.py
| `-- __init__.py
`-- test.py
☁ imports cat test.py
from paquete import foo
print "Esto fue un ejemplo"
☁ imports cat paquete/foo/__init__.py
from ..bar import saludo
print saludo()
☁ imports cat paquete/bar/__init__.py
def saludo():
return "Soy el modulo bar"
El __init__.py dentro de paquete esta vacío, es para que sea un módulo
Es importante tener en cuenta que si los submodulos no están dentro de un
paquete, los imports relativos se rompen...
Saludos!
--
Joaquín Sorianello
A.K.A. Joac
@_joac
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20130606/40060dce/attachment.html>
More information about the pyar
mailing list