如何从Python列表嵌套字典的结构中提取指定字典字段值?
正确取值方案
错误原因
你当前的list_name是列表类型,仅支持整数索引定位元素,无法直接通过字符串key取值,需要先定位到列表内的字典元素后,再读取字典的time字段。
单元素列表取值(匹配你给出的示例结构)
你的示例列表仅包含1个字典元素,使用如下写法即可拿到值:
time_value = list_name[0]["time"]
说明:[0]代表取列表的第一个元素(Python列表索引从0开始计数),拿到字典对象后即可通过["time"]读取对应字段值。
多元素列表批量取值
如果列表中包含多个字典,需要批量提取所有time字段,可以用列表推导式实现:
time_values = [item["time"] for item in list_name]
异常兼容写法
如果不能保证所有字典都存在time字段,可以用字典的get方法避免抛出KeyError异常:
# 单元素取值 time_value = list_name[0].get("time") # 批量取值 time_values = [item.get("time") for item in list_name]
找不到time字段时会返回None,不会中断程序运行。
内容的提问来源于stack exchange,提问作者Berke Ertep
相关产品推荐
相关产品推荐

