在 reduce 函数中实现 for 和 if
implement for and if in reduce funtion
我想知道如何使用 reduce 函数从 list of object
中获取特定键值。
假设我将一个对象列表传递给 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))
我想知道如何使用 reduce 函数从 list of object
中获取特定键值。
假设我将一个对象列表传递给 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))