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

如何从Lambda事件中提取三级参数pgeextreftype?已尝试方法均返回空值

正确提取Lambda事件中三级参数pgeextreftype的方法

问题根源

你的代码失败有两个核心原因:

  1. Lambda事件中的body是JSON字符串,不是可直接操作的Python字典,无法直接用.get()方法取值。
  2. workorder是一个**列表(数组)**类型,不是单个字典,必须先获取列表中的元素,再提取目标字段。

正确实现代码

import json

def lambda_handler(event, context):
    # 1. 将event中的body字符串解析为Python字典
    event_body = json.loads(event['body'])
    
    # 2. 从workorder列表中取出第一个元素(根据日志,列表内只有一个字典)
    workorder_item = event_body['workorder'][0]
    
    # 3. 提取目标参数pgeextreftype
    pgeextreftype = workorder_item.get('pgeextreftype')
    
    # 验证结果
    print(pgeextreftype)  # 输出: PWRPREL
    return pgeextreftype

对之前错误代码的说明

  • event_body.get('pgeextreftype'):错误,因为pgeextreftype不在顶层字典中,而是嵌套在workorder列表的子字典里。
  • event_body_workorder.get('pgeextreftype'):错误,若event_body_workorder是直接取event_body['workorder'],那它是列表,列表没有.get()方法,必须先取列表元素。
  • event_body.get('workorder.pgeextreftype'):错误,Python字典不支持用点分隔的路径直接取值,必须逐层访问。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.25 04:42:58