You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

IntelliJ IDEA中Python调用json.loads报AttributeError错误

问题根因

这个报错和IntelliJ IDEA本身无关,核心原因是IDEA运行Python脚本时默认会把当前项目根目录放在模块搜索路径sys.path的最高优先级,如果你项目里存在自己命名的json.py文件、或是名为json的自定义Python包,就会覆盖Python标准库的json模块,此时你调用的json.loads实际是找你自定义的那个文件里的方法,自然找不到就抛错。
VSCode、Databricks环境运行正常,是因为这两个环境的模块搜索路径优先级和IDEA配置不一致,没有优先加载到你项目里的同名冲突文件。

排查&修复步骤
  • 第一步:确认加载的json模块实际来源
    在你运行的脚本最开头加以下代码,在IDEA中执行:
    import json
    print(json.__file__)
    
    如果输出路径不是当前Python解释器安装目录下的lib/json/__init__.py(比如输出路径是你自己项目文件夹下的json.py),即可确认是命名冲突问题。
  • 第二步:解决命名冲突
    • 找到项目里自定义的json.py文件/json自定义包,重命名为非标准库同名的名称,比如json_utils.py
    • 删除项目中所有__pycache__缓存文件夹,避免旧的编译缓存导致冲突残留
  • 第三步:校验IDEA环境配置
    • 打开File > Project Structure > SDKs,确认当前选择的Python解释器和你VSCode、Databricks使用的解释器版本、路径一致,不要误选到装了冲突第三方包的环境
    • 打开Run > Edit Configurations,找到你当前运行的脚本配置项,检查Working directory配置是否正确,同时确认PYTHONPATH配置里没有把包含自定义json文件的无关目录放在最前面
避坑提示

不要给自定义的Python脚本、包起和Python标准库同名的名称,除了json之外,random、re、datetime、os、csv等都是高频重名冲突的模块名,同名时Python会优先加载工作目录下的自定义文件,直接导致标准库功能调用失败。

内容的提问来源于stack exchange,提问作者Jelena Ajdukovic

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.03 03:24:26