[1, 2, 3, 4, 5] の積(全部かけた値)120 を reduce で計算して表示しよう。reduce は、リストを左から順に2つずつまとめていって、最後に1つの値にします。from functools import reduce
reduce(lambda a, b: a + b, [1, 2, 3, 4]) → 10(合計)reduce に「2つの値をかけ算してまとめる lambda」と nums をわたすresult に入れる(下の print がこの名前を使う)[1, 2, 3, 4, 5] なら 1×2×3×4×5 = 120sum() や max() をもっと一般化した「畳み込み」の道具です。合計・積・最大はもちろん、「2つをまとめるルール」を自分で決めれば、累積的な計算をなんでも表現できます。lambda a, b: ... の a が「これまでの結果」、b が「次の要素」reduce を使うには from functools import reduce が必要(もう書いてあるよ)120
全問正解でクエストクリア!
問題 1: reduce で [1, 2, 3, 4, 5] の合計を計算して表示しよう!
問題 2: reduce で [3, 7, 2, 9, 1] の最大値を求めて表示しよう!
問題 3: reduce で ['P', 'y', 't', 'h', 'o', 'n'] を結合して 'Python' と表示しよう!