目次
使用環境
- OS:Windows 10 Pro(バージョン:20H2)
- 言語:Python
経緯
Pythonで開発を進める中で、
作成した関数をさらにまとめて整理したいと考えました。
そこで、関数の中に関数を作成できるかについて勉強しました。
結論:関数の中に関数を作ることは可能
Pythonでは、関数の中に別の関数を定義することができます。
この構造は一般に、**「ネストされた関数(Nested Function)」**と呼ばれます。
コード例(関数の中に関数を作る)
def outer_function():
print("外側の関数です。")
def inner_function():
print("内側の関数です。")
inner_function()
# 呼び出し
outer_function()
実行結果
外側の関数です。
内側の関数です。
コード解説
- **
outer_function()
**が外側の関数です。 - 外側の関数の内部で、**
inner_function()
**を定義しています。 - インデントを1段深くすることで、関数の中に関数を書くことができます。
- 外側の関数から内側の関数を呼び出す形で実行されます。
ポイントまとめ
- Pythonでは、関数内にさらに別の関数を定義することが可能です。
- 内側の関数(
inner_function
)は、外側の関数(outer_function
)の中でのみ有効です。 - ネストされた関数を使うことで、コードを整理しやすくしたり、スコープを限定したりすることができます。
まとめ
Pythonで関数をさらに関数にまとめたい場合は、
- 外側の関数を定義
- その中に内側の関数を定義
- インデントを適切に揃える
ことで、簡単に関数の中に関数を作ることができます。
コードをきれいに整理したり、局所的な処理をまとめたい場合に非常に役立つテクニックです。
ここまでお読みいただき、誠にありがとうございました。