回答編集履歴
1
一部修正
answer
CHANGED
@@ -4,7 +4,7 @@
|
|
4
4
|
|
5
5
|
[公式ドキュメント 正規表現操作-モジュールコンテンツ](https://docs.python.org/ja/3/library/re.html#module-contents)のre.subの説明では「repl が関数であれば、それは重複しない pattern が出現するたびに呼び出されます。この関数は一つの マッチオブジェクト 引数を取り、置換文字列を返します。」と書いてあります。よって、関数が書かれている場合、このような定義にしたがって、何回か関数が呼び出され、その返り値が置換文字列として使われることになっています。
|
6
6
|
|
7
|
-
このような関数を引数にとるメソッドや関数は、Pythonだけでなく、最近の普通の言語には数多く存在します。関数を引数とする関数を、「高階関数」と呼び、最近(ここ30年くらい)の言語の特徴になっています。
|
7
|
+
このような関数を引数にとるメソッドや関数は、Pythonだけでなく、最近の普通の言語には数多く存在します。関数を引数とする関数を、「高階関数」と呼び、最近(ここ30年くらい?もっとかも)の言語の特徴になっています。
|
8
8
|
|
9
9
|
> 2. この仕組みを書くにはどのようなコードの書き方をしたらいいのか。
|
10
10
|
|
@@ -32,4 +32,4 @@
|
|
32
32
|
#2
|
33
33
|
```
|
34
34
|
|
35
|
-
この例のクラスAは、リストをメンバ変数として保持します。また、クラスAのメソッドaggは関数を引数に取り、メンバ変数のリストをその関数に与えて結果を出すような機能になっています。
|
35
|
+
この例のクラスAは、リストをメンバ変数として保持します。また、クラスAのメソッドaggは関数を引数に取り、メンバ変数のリストをその関数に与えて結果を出すような機能になっています。関数としては既成のものだけでなく、もちろん新たな関数を自分で定義してもよく、それを1行で書くラムダ関数という表記を使っても良いです。
|