python-3.x - 实现 for 和 if 在 reduce 函数中
问题描述
list of object
我想知道如何从使用 reduce 函数中获取特定的键值。
假设我将一个对象列表传递给 reduce 函数,每个对象都有一个键number
和值some integer
,所以I want a sum of all values
。
样本数据就像
result = [{'number':1},{`number`:2},{'number':3}]
所以在reduce中我有代码在哪里key
结果和value
是[objects,..]
,我应该如何实现这一点?
reduce = Code(
"""
function(key,value)
{
return Array.sum(value);
}
"""
)
解决方案
from functools import reduce
result = [{'number':1},{"number":2},{'number':3}]
c = reduce(lambda x,y:{"number":x['number']+y['number']}, result)
print(c)
"you can also use list comprehensions"
target = sum(i['number'] for i in result)
print(dict(number=target))
推荐阅读
- azure - 无法在澳大利亚地区创建 Azure B2C 租户
- angularjs - 错误类型错误:无法读取未定义的属性“postFeedback”
- css - 使用背景图像的 webP 的 JPG 备份选项?
- reactjs - 下拉菜单未在 React 中更新
- android - 如何在其他活动中显示导航抽屉
- java - Java Collections.sort 用于通配符列表(List )
- html - 倾斜或按摩阵列
- kubernetes - k8s上的locust主从,测试完成后删除所有pod
- encryption - 为什么3DES的中间块是解密而不是加密?
- java - 在 RMI 对等文件共享客户端-服务器系统中实施 RSA 加密/解密