如何构建python项目中的子目录,并将其中的代码提供给同一项目中的其他子目录?
我发现困难的例子:
root/
+--- __init__.py
+--- foo/
+--- __init__.py
+--- foo.py
+--- test/
+--- foo_test.py
我尝试使用相对导入(as suggested in this SO answer)
在foo_test.py
:
#!/usr/bin/python
from ... import foo
尝试从命令行运行:
$ chmod +x ./foo_test.py
$ ./foo_test.py
我收到以下错误:
Traceback (most recent call last):
File "./foo_test.py", line 3, in <module>
from ... import foo
ValueError: Attempted relative import in non-package
问题:
foo
和foo_test
旁边的其他子目录可以使foo
可用的pythonic方法是什么?