您好,我有一个项目,它由几个名为 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:没有名为“Commons”的模块
。我错过了什么?
最佳答案
您需要为模块选择一个顶级名称,然后按如下方式排列代码:
Home
script_name.py
somename
Common.py
Proj1
Scripts1.py
Proj2
Scripts2.py
然后使用import somename
并在模块本身内使用somename.Common
和somename.Proj1.Scripts1
等。此外,您可能想要将 script_name.py
移动到模块目录本身之外,如图所示。
关于python - 导入错误。没有名为 Commons 的模块错误 - python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55178224/