Hola, Tengo una duda con respecto al funcionamiento de los ficheros __init__.py. Digamos que estoy haciendo un "mini-proyecto" en Python en el que necesito importar tres módulos (cada uno de los cuales es un fichero .py) a otro script, que es el principal (el que se ejecutará al final).
Jerárquicamente tengo los ficheros distribuidos de la siguiente manera: +-- PRUEBASmod/ -- Este es el directorio que contiene todo mi proyecto. | +-- addsubt.py +-- multdiv.py +-- fileread.py -- Éste y los dos anteriores son los módulos que quiero importar posteriormente. +-- __init__.py -- FIchero vacío. +-- promain/ -- Subdirectorio que contiene el script principal. | +-- __init__.py -- Enseguida detallaré el contenido de este fichero. +-- mainf.py -- Y finalmente este es el script principal. Quiero importar los módulos addsubt, multdiv y fileread en mainf.py. Para este menester tengo entendido que he de utilizar un archivo __init__.py (de otra manera no encontraría los módulos, ya que tienen que estar en el mismo directorio que mainf.py). Leyendo la documentación de Python he entendido que lo que hace __init__.py es "convertir" un simple directorio (entendido como una simple carpeta que contiene los ficheros) a otro módulo (paquete) de Python que a su vez contiene otros módulos, que son los que yo quiero importar al final. Dentro de la carpeta PRUEBASmod he creado el fichero __init__.py, que es el que debería hacer que PRUEBASmod se comportara más adelante como un módulo más que contiene a otros módulos, y dentro de la carpeta 'promain' he creado otro __init__.py con el siguiente contenido: from PRUEBASmod import addsubt from PRUEBASmod import multdiv from PRUEBASmod import fileread Pero aun así, cualquier cosa que importe en mainf.py que esté fuera de su directorio (la carpeta promain) siempre termina en el siguiente error cuando lo ejecuto: dani@dani-desktop:~/mipython/PRUEBASmod/promain$ python mainf.py Traceback (most recent call last): File "mainf.py", line 3, in <module> import PRUEBASmod ImportError: No module named PRUEBASmod En este caso había importado el módulo PRUEBASmod en mainf.py y no me lo reconoce. Pero aunque importe los addsubt, muldiv y fileread por separado, me sigue saltando un ImportError. ¿Dónde me estoy equivocando? Gracias de antemano, Dani _______________________________________________ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/