问题描述
我有以下项目结构:
Project/
|-- src/
| |-- package/
| |-- __init__.py
| |-- a.py
| |-- b.py
|
|-- tests/
|-- test_a.py
from .a import some_function
from .b import SOME_CONSTANT
但现在我想在 test_a.py
中运行以下代码:
import package
package.some_function()
只要它位于 src/
目录中,一切正常,我可以访问我的包中定义的所有导入。但我希望它位于 tests/
目录中。
在查看 flask 存储库时,我发现 x 就是这样做的。例如,烧瓶 test_appctx.py 正是这样做的:
import flask
flask.do_something()
我怎样才能在我的项目中实现这一点?
解决方法
您应该将 src/
添加到查找函数的文件夹中:
import sys
sys.path.append('../src')