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

从API返回JSON提取errors字段至Python列表报错排查

问题分析与解决方案

错误根源

  1. f-string误用:你用f''' '''定义JSON字符串,JSON里的{}会被f-string识别为格式化占位符,直接触发ValueError: Invalid format specifier。完全没必要用f-string,直接用普通三重引号字符串即可。
  2. JSON解析方法错误:json.load()的参数是文件对象,用来读取文件中的JSON;要解析内存中的字符串,得用json.loads()方法。

修正后的代码

import json

def testbobo():
    # 去掉f-string,直接用普通三重引号定义JSON字符串
    my_data = '''{
                    "apiStatusInfo": {
                        "apiStatus": "Success",
                        "apiStatusCode": 0
                    },
                    "errors": [
                        {
                            "userEmail": "man.done.banner.com",
                            "error": "Invalid input parameters in request"
                        },
                        {
                            "userEmail": "ban.super.banner.com",
                            "error": "Invalid input parameters in request"
                        }
                    ]
               }'''
    
    # 用json.loads解析字符串
    converter = json.loads(my_data)
    # 提取errors字段到列表
    error_list = converter['errors']
    
    # 验证结果
    for error in error_list:
        print(error)

testbobo()

执行结果

运行后会输出每个错误条目:

{'userEmail': 'man.done.banner.com', 'error': 'Invalid input parameters in request'}
{'userEmail': 'ban.super.banner.com', 'error': 'Invalid input parameters in request'}

你可以直接用error_list这个变量来处理邮件发送逻辑。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.19 06:50:24