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

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

意味

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

name変数

name変数はPythonスクリプトを読み込む際に自動的に作成されます。
name変数には実行中のスクリプトのモジュール名が代入されます。

スクリプトを直接実行

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‘:」はスクリプトファイルを将来的にモジュール化する場合や、自作モジュールの動作確認などに使います。

関連記事
1 Javascript入門 基本文法
関連記事