【Python】関数の中に関数を作る方法|ネストされた関数(関数の入れ子構造)

目次

使用環境

  • 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で関数をさらに関数にまとめたい場合は、

  • 外側の関数を定義
  • その中に内側の関数を定義
  • インデントを適切に揃える

ことで、簡単に関数の中に関数を作ることができます。

コードをきれいに整理したり、局所的な処理をまとめたい場合に非常に役立つテクニックです。

ここまでお読みいただき、誠にありがとうございました。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

私が勉強したこと、実践したこと、してることを書いているブログです。
主に資産運用について書いていたのですが、
最近はプログラミングに興味があるので、今はそればっかりです。

目次