Python学習編33回目です。
東京大学のPython学習ページで学んでいます。今回は6-2. 高階関数(2周目)
今回は練習問題解いたうえでChatGPTに問題出してもらった。
入力:pythonの高階関数を理解するための初歩的な練習問題を作ってください
出力:
Pythonの高階関数を理解するための初歩的な練習問題を以下に示します。これらの問題は、高階関数の基本的な使い方や概念を把握するのに役立つでしょう。
問題 1: リストの各要素を2倍にする
リストの各要素を2倍にする関数をmap
を使用して作成してください。
問題 2: 偶数だけを抽出する
与えられたリストから偶数のみを抽出する関数をfilter
を使用して作成してください。
問題 3: 要素の合計を計算する
リストの全要素の合計を計算する関数をreduce
を使用して作成してください。reduce
はfunctools
モジュールからインポートする必要があります。
問題 4: 数字リストを文字列に変換
与えられた数字のリストを、map
を使用して各数字を文字列に変換する関数を作成してください。
問題 5: 条件に基づくリストの変換
与えられた数字のリストに対して、偶数ならその数を2倍にし、奇数ならそのままにする関数をmap
とlambda
を使用して作成してください。
これらの練習問題を解くことで、Pythonの高階関数の基本的な使い方を理解する良いスタートになるでしょう。
1周目では「lambdaなんもわからん…」ってなってたのに、2周目は「lambdaすげーチョー便利」ってなって進歩を感じる。あと1週目はいちいちfor文とか既知の概念でコード書いてから高階関数に翻訳してたのに、2周目ではいきなり高階関数の形でコード書けた。良きかな良きかな。
次回に続く