导入错误。没有名为 Commons 的模块错误 - python

ImportError . No module named Commons error - python

您好,我有一个项目,它由几个名为 Proj1 和 Proj2 的文件夹组成。

Home
    Proj1
       Scripts1.py

    Proj2
       Scripts2.py

    Commons.py

我在 Scripts1 中设置

sys.path.append('/Home')
os.chdir('/Home')

import Commons 包含对每个脚本有用的函数。 整个项目在 Linux 服务器上。我 运行 带有 bash

的脚本
script_name=Scripts1
script_file="/Home/Proj1/${script_name}.py"
python "$script_file"

我不断收到错误 ModuleNotFoundError: No module named 'Commons'。我错过了什么?

您需要为您的模块选择一个顶级名称,然后这样安排您的代码:

Home
  script_name.py
  somename
    Common.py
    Proj1
      Scripts1.py
    Proj2
      Scripts2.py

然后使用 import somename 并在模块本身和 somename.Proj1.Scripts1 中使用 somename.Common 等。此外,您可能希望将 script_name.py 移动到模块目录本身之外,因为显示。