[英]python relative import error
这是我的项目结构
Project/
docs/
scripts/
project-2.5/
bin/
program.py
__init__.py
config/
config.ini
tests/
src/
main_program.py
__init__.py
__init__.py
用户应该执行program.py,它将选项传递给main_program.py
eg. bin/># python program.py -c ../config/config.ini
program.py
#!/usr/bin/env python
import optparse
from ..src.main_program import main_function
def main():
parser = optparse.OptionParser()
parser.add_option('-c', '--config',
dest="config_file",
default='config.ini'
)
options, remainder = parser.parse_args()
main_function(options)
if __name__ == "__main__":
main()
main_program.py
#!/usr/bin/env
import sys
def main_function(options):
blah blah blah
......
...
..
.
但是我得到这个错误:
Traceback (most recent call last):
File "./program.py", line 6, in <module>
from ..src.main_program import main_function
ValueError: Attempted relative import in non-package
__init__.py
在您的src
文件夹中具有错误的名称。 它缺少.
在文件名中。
另外,您的Project/project-2.5/
文件夹也没有__init__.py
。 如果您解决了这些问题,它应该可以正常工作。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.