如何从列表内的字典中提取{"a":0.05,"b":0.04}与"66"?
嘿,这事儿超简单,我给你掰扯清楚怎么提取这两个数据~
提取目标数据的具体步骤
你的数据结构是列表包裹着单个字典,所以核心思路就是先拿到列表里的字典元素,再通过键名直接获取对应的值就行。
方式一:最直接的索引+键访问
这是新手最容易理解的写法,代码一目了然:
# 先定义你的原始数据(注意别用list当变量名,它是Python内置类型) my_data = [{"length": {"a": 0.05,"b": 0.04}, "id": "66"}] # 提取length对应的字典 length_info = my_data[0]["length"] # 提取id的值 id_str = my_data[0]["id"] # 验证结果 print(length_info) # 输出: {'a': 0.05, 'b': 0.04} print(id_str) # 输出: '66'
说明一下:my_data[0]是取列表里的第一个(也是唯一一个)字典,后面的["length"]和["id"]就是直接从字典里拽出对应键的值。
方式二:更Pythonic的解构赋值
如果你想写得更简洁优雅,可以用解构赋值来简化步骤:
my_data = [{"length": {"a": 0.05,"b": 0.04}, "id": "66"}] # 先把列表里的字典单独拎出来 target_dict, = my_data # 逗号不能少,告诉Python这是解构单个元素的列表 # 再从字典里提取两个值 length_info = target_dict["length"] id_str = target_dict["id"]
或者一步到位更紧凑:
my_data = [{"length": {"a": 0.05,"b": 0.04}, "id": "66"}] length_info, id_str = my_data[0]["length"], my_data[0]["id"]
小提醒:别用list当变量名哦,它是Python自带的关键字,用来创建列表的,用了会覆盖内置功能,容易出问题~
内容的提问来源于stack exchange,提问作者shintaro202020
相关产品推荐
相关产品推荐

