Me está costando entender cómo funciona la importación de módulos en Python (nunca antes lo había hecho en otro idioma).No puedo importar mis propios módulos en Python
Digamos que tengo:
myapp/__init__.py
myapp/myapp/myapp.py
myapp/myapp/SomeObject.py
myapp/tests/TestCase.py
Ahora estoy tratando de conseguir algo como esto:
myapp.py
===================
from myapp import SomeObject
# stuff ...
TestCase.py
===================
from myapp import SomeObject
# some tests on SomeObject
Sin embargo, definitivamente estoy haciendo algo mal como Python no puede ver que myapp
es un módulo:
ImportError: No module named myapp
Intenté simplemente usar' import' en mi 'TestCase.py' pero aún así me dio el mismo error Supongo que es porque está en un subdirectorio de '__init __. Py'? – n0pe
Oh, espera, creo que lo entiendo. Si mis casos de prueba están llamando desde el paquete, podré usar 'from ... import ...' right? – n0pe
Solo lo hará si se está importando TestCase desde fuera del paquete; por ejemplo, si ejecuto 'from myapp.tests importo TestCase desde un script fuera de myapp. Si está ejecutando 'python TestCase.py' en la carpeta de pruebas, no puede hacer las importaciones relativas –