The Reduce Function in Python
- 时间:2020-09-13 14:33:25
- 分类:网络文摘
- 阅读:158 次
In Python, the reduce() function is declared in the functools. And it has the following function signature:
1 | reduce(method, data, initial_value); |
reduce(method, data, initial_value);
The reduce() function will iterate over the data array (or list), and accumulate a value (set to initial_value first) using the given function which has the following signature:
1 2 | def reducer_method(accumulated_value, current_value): pass |
def reducer_method(accumulated_value, current_value): pass
For example, to sum up all the values from 1 to 100, you can use this:
1 2 | from functools import reduce reduce(lambda s, cur: s + cur, range(101), 0) |
from functools import reduce reduce(lambda s, cur: s + cur, range(101), 0)
As we can see, the reducer function for sum is passed as a lambda function, which is essentially the same as:
1 2 | def reducer_sum(s, cur): return s + cur |
def reducer_sum(s, cur): return s + cur
The reduce() function in Python allows you to do one-liner without need to write a loop.
How is reduce() implemented in Python?
The reduce() function is as simple as the following:
1 2 3 4 5 | def reduce(reducer, data, value): cur = value for i in data: cur = reducer(cur, i) return cur |
def reduce(reducer, data, value):
cur = value
for i in data:
cur = reducer(cur, i)
return cur–EOF (The Ultimate Computing & Technology Blog) —
推荐阅读:What Should You Blog About During the Pandemic and Beyond? 6 Tips For Starting a Business During a Pandemic Will Your Blog be affected by the Current Facebook Ad Boycott? Unobvious Life Hacks for Ads Optimization in Google Essential Traits That Will Help Bloggers Work From Home Successf Examining the Physical and Mental Health of Writers and Bloggers How will Blogging Change after the Pandemic? Digital Relationships: 5 Tips For Building A Better Veterinary B The 2020 Pandemic Further Boosts Earnings and Influence of Blogg What to Do When Your Blog Gets Too Big for You Alone
- 评论列表
-
- 添加评论