因为我从来没有大到需要子目录的脚本,所以我对包和从 python 中的不同目录导入还很陌生。 python (3.8.6) 中不允许从同级和/或父目录导入吗?
在以下结构中:
parent_dir/
parent_dir/__init__.py
parent_dir/parent.py
parent_dir/sub_dir1/__init__.py
parent_dir/sub_dir1/sub1.py
parent_dir/sub_dir2/__init__.py
parent_dir/sub_dir2/sub2.py
在sub1.py文件中,我试过:
from sub_dir2 import sub2
我最终得到了以下内容:
ModuleNotFoundError: No module named 'sub_dir2'
如果我在 sub_dir1/init.py 文件中尝试相对导入:
from .import sub1
我明白了:
ImportError: attempted relative import with no known parent package
我做错了什么?