【Python】 if __name__ == ‘__main__’: の意味・使い方

この記事では、Pythonのif name == ‘main‘: の意味や使い方などについて紹介します。

if name == ‘main’: とは

「if name == ‘main‘: 」は、「スクリプトファイルが直接実行された場合のみ実行する」という意味です。
直接以外の場合は実行されません。

name変数はPythonスクリプトを読み込む際に自動的に作成され、実行中のスクリプトのモジュール名が代入されます。
Pythonスクリプトを直接実行した場合、そのスクリプトファイルはmainモジュールとして扱われます。
そのため、name変数内にmainという値が代入されます。

実行例

def example():
    print('黒竜双剋勝利剣')

if __name__ == '__main__':
    example()

上記のプログラムを直接実行した場合、example関数が実行されるため、「黒竜双剋勝利」と表示されます。
その理由を細かくまとめると以下の通りになります。

処理の流れ
1 スクリプトファイルを直接実行する。
2 name変数が自動で生成される。
3 name変数に’main’が代入される。
4 if文の条件式が真になる。
5 example関数を実行する。
6 「黒竜双剋勝利」と表示される。

「if name == ‘main‘:」はスクリプトファイルを将来的にモジュール化する場合や、自作モジュールの動作確認などに使います。

関連ページ

【Python超入門】使い方とサンプル集
Pythonの使い方について、基礎文法から応用例まで入門者向けに解説します。

コメント