从 python 中的不同包导入文件时出现相对导入错误

relative import error while importing file from diffrent package in python

我创建了以下目录结构。

package1/
   __init__.py
   file1.py
   file2.py
package2/
   __init__.py
   utils.py

我必须从 package1 的 file2.py 处的 package2 导入 utils.py。 我尝试使用

from .package2 import utils

但出现错误

ModuleNotFoundError: No module named '__main__.package2'; '__main__' is not a package 

file2中你可以添加package1package2的根目录到你的路径:

import os, sys
this_dir, _ = os.path.split(__file__)
root_dir = os.path.dirname(this_dir)
sys.path.append(root_dir)

然后导入:

from package2 import utils