ネスト関数
メニューを表示するにはスワイプしてください
コードの可読性、カプセル化、再利用性を高めるために、関数の中に別の関数を定義することができます。これをネストされた関数と呼びます。Pythonでは、関数定義の本体内に別の関数定義を書くことでネストされた関数を作成します。これにより、外部からアクセスできない補助的なロジックを隠したり、その場で特化した関数を生成したりすることが可能です。
ネストされた関数の構文は簡単で、def文を他のdefの本体内に配置するだけです。内側の関数は外側の関数の変数にアクセスできるため、外側の関数の引数に依存するカスタマイズされた動作や補助的な計算を作成するのに便利です。
ネストされた関数の実用的な使い方として、外側の関数のパラメータでカスタマイズされた関数を返すことが挙げられます。これは関数型プログラミングで特化した関数を生成したり、グローバルスコープを汚さずにロジックをカプセル化したりする際によく利用されます。
1234567891011def make_multiplier(factor): # 'multiplier' function is nested inside 'make_multiplier' def multiplier(x): return x * factor return multiplier double = make_multiplier(2) triple = make_multiplier(3) print(double(5)) print(triple(4))
1. なぜ関数の中に別の関数を定義するのでしょうか?
2. 囲み関数で定義された変数のスコープは何ですか?
すべて明確でしたか?
フィードバックありがとうございます!
セクション 3. 章 3
AIに質問する
AIに質問する
何でも質問するか、提案された質問の1つを試してチャットを始めてください
セクション 3. 章 3