Understanding absolute and relative imports
我试图从另一个模块中的文件导入一个函数,但始终收到以下错误。
1 | ValueError: Attempted relative import in non-package |
我看过很多文章说做绝对的而不是相对的导入,但是得到了错误
1 | ImportError: No module named app.main.events |
号
我的文件结构
1 2 3 4 5 6 7 8 9 | \_ dir \_ __init__.py \_ app \_ main \_ __init__.py \_ events.py \_ game \_ __init__.py \_ run.py |
事件.py
1 2 | def my_function(): do something.... |
。
Py
1 2 3 4 5 6 7 | from ..main.events import my_function # returns Attempted relative import in non-package from app.main.events import my_function # returns No module named app.main.events |
我看不出哪里出了问题…这可能是很简单的事情。
只要您在一个包中使用相对进口,并且是明确的,例如
如果您直接执行
也记不清是否有必要,但你可能在你的