同一目录下Python无法导入OfficeContextAgent模块求助
核对模块文件名的拼写与大小写
确保模块文件名为OfficeContextAgent.py,Python在Linux/macOS等区分大小写的系统中,导入语句的名称必须和文件名完全匹配,不能出现大小写不一致的情况(比如officecontextagent.py或OfficeContextagent.py都不行)。确认当前工作目录是否为模块所在目录
你的代码中打印了os.getcwd()的结果,运行后要验证该路径是否就是模块文件实际存放的目录。如果路径不匹配,说明你运行脚本的路径有误(比如在上级目录执行python src/main.py,但模块和主脚本都在src目录下)。这种情况下,可以通过以下代码将脚本所在目录加入Python的搜索路径:import sys import os # 获取当前脚本所在的绝对目录 script_dir = os.path.dirname(os.path.abspath(__file__)) # 将该目录添加到sys.path sys.path.append(script_dir) import OfficeContextAgent检查目录的包识别设置
在模块所在目录下创建一个空的__init__.py文件,虽然Python 3.3+支持隐式命名空间包,但部分运行环境或IDE仍需要这个文件来识别目录为可导入的包。排查同名模块冲突
确认项目内没有与OfficeContextAgent同名的文件,同时检查是否安装了同名第三方包:运行pip list查看列表,若存在同名包,可卸载该包,或改用相对导入方式:from . import OfficeContextAgent注意相对导入仅适用于包内部,需要将脚本作为包的一部分运行,比如执行
python -m your_package.main(your_package为你的包目录名)。检查IDE的运行配置
若使用IDE(如PyCharm、VS Code)运行脚本,检查IDE的"工作目录"配置是否为模块所在的目录。部分IDE默认将项目根目录设为工作目录,会导致脚本无法找到同目录模块,此时需将工作目录修改为脚本所在目录。
内容的提问来源于stack exchange,提问作者Nicolas Alexander Lomas

