我有我试图从一个文件夹的层级下读取自定义模块:Python中没有名为模块
> project-source
/tests
/provider
my_provider.py
settings_mock.py
__init__.py
我想打电话,从my_provider.py
import tests.settings_mock as settings
例从命令行:
project-source> python tests/provider/my_provider.py
错误:
... ImportError: No module named settings_mock
我一直得到No module named settings_mock
为错误。我已经出口到PYTHONPATH的路径project_source
。我已经在其根目录下创建了一个__init__.py
文件,然后在错误中没有更改,从而将测试集成到一个包中。
我可以cd'ing项目源
当打印settings_mock.py
属性
>>> import tests.settings_mock as settings
>>> print settings.storage_provider
correct storage provider value
是任何人都可以在这里指出我的错误?谢谢!
如果您的子文件夹是包(即它们包含'__init __。py'),则可以使用相对导入:'from .. import settings_mock' – jbndlr
只需将空** ___ init ___。py **添加到您的测试目录中 – dmitryro
'__init __。py'在哪里? –