python - 如何将列表的 OrderedDic 元素的特定值相加?
问题描述
如果有:
random_list = [OrderedDict([('num1',1.0), ('num2', 2.0), ('num3', 3.0)]),OrderedDict([('num1',10.0), ('num2', 20.0), ('num3', 30.0])]
- 如何将 num2 的值相加?(2.0 + 20.0 = 22.0)
- 如何将 num2 和 num3 的值相加?(2.0 + 20.0 + 3.0 + 30.0= 55.0)
在上述任何情况下,都不应使用 sum()。
谢谢。
解决方案
您可以像使用标准 Python 的 dict 一样使用 OrderedDict:
from collections import OrderedDict
random_list = [OrderedDict([('num1',1.0), ('num2', 2.0), ('num3', 3.0)]),OrderedDict([('num1',10.0), ('num2', 20.0), ('num3', 30.0)])]
case1 = sum(d['num2'] for d in random_list)
print(case1)
case2 = sum(d['num2'] + d['num3'] for d in random_list)
print(case2)
印刷:
22.0
55.0
推荐阅读
- linux - 当我有多个打开时关闭单个 vim 实例
- android - 使用 React Native 在地图上生成“视野外”标记指示器
- entity-framework - 带有导航属性的存储库插入抛出“外键约束失败”
- python - SWIG Python 从父对象转换为子对象
- gcloud - gcloud 会使用我的 SSH 密钥登录还是我总是需要通过网络登录?
- performance - 在python中绘制圆圈并保存为png的最快方法是什么?
- node.js - 在同一个 Kubernetes 节点上多次复制 Node.js Kubernetes 服务器 pod 是否有意义?
- oracle - 如何使用游标更新表
- google-cloud-platform - 如何将 Google Big Query 输出提供给客户端网络
- reactjs - 无法将上传的图片 url 从 firebase 发送到反应钩子中的另一个组件