如何遍历字典数组并仅提取指定键值对存入新的字典数组
问题原因分析
- 你反复修改同一个字典对象
d,每次遍历新条目都会覆盖d里的旧值,最终自然只能保留最后一条的结果 - 没有初始化用来存储结果的数组,所有新生成的字典都没有追加到数组里保存
- 代码里提取的
token_fundamentals不符合你要求的product_progress字段需求 - 内层遍历键的循环完全冗余,没有实际作用
修复后的实现
方法1:基础循环写法,可读性高
# 先初始化空列表存结果 result = [] for item in projectlist3: # 每次循环生成一个新的字典,不要复用同一个字典对象 new_dict = { 'symbol': item['symbol'], 'product_progress': item['product_progress'] } # 把新字典追加到结果列表里 result.append(new_dict) print(result)
方法2:列表推导式写法,更简洁
result = [{'symbol': item['symbol'], 'product_progress': item['product_progress']} for item in projectlist3] print(result)
内容的提问来源于stack exchange,提问作者Miller42
相关产品推荐
相关产品推荐

