하지만 이 방식은 람다가 일반적으로 사용되는 것과는 사뭇 다르다. 반면 reduce 함수와 함께 사용될 때 비로소 빛을 발한다. 예를 들어 다음 코드는 1부터 5까지 더한 값을 구하는 방법이다.
t5 = functools.reduce(lambda x, y: x + y, [1,2,3,4,5])
다음 코드는 1부터 5까지 값을 모두 곱하는 방법이다.
f5 = functools.reduce(lambda x, y: x * y, [1,2,3,4,5])
프로그램은 런타임 시 동적으로 데이터를 생성하며, 다시 참조하고 싶으면 변수에 대입한다. 함수(콜러블)도 똑같다. 런타임 시 생성되며 다시 참조하고 싶으면 변수에 대입한다. 아니면 앞서 살펴본 예시와 같이 익명으로 사용할 수도 있다.