Объясните, как работает функция reduce



Ответ

Это может быть сложновато сразу понять, пока вы не используете ее несколько раз.



reduce принимает функцию и последовательность — и проходит по этой последовательности. На каждой итерации в функцию передаются как текущий элемент, так и выходные данные предыдущего элемента. В конце концов, возвращается одно значение .



from functools import reduce

def add_three(x,y):

return x + y

li = [1,2,3,5]

reduce(add_three, li)

#=> 11




Возвращается 11, что является суммой 1+2+3+5.



@python_job_interview