読者です 読者をやめる 読者になる 読者になる

ボールを蹴りたいシステムエンジニア

ボール蹴りが大好きなシステムエンジニア、ボールを蹴る時間確保の為に時間がある時には勉強する。

if __name__ == '__main__':について理解する

pythonのサンプルコードによく出てくるこれ

if __name__ == '__main__':

色々調査してわかった事を整理する。(半分自己解釈)

  • コマンドラインからスクリプトファイルを指定してPythonインタプリタを起動すると、指定されたファイルは、__main__という名前のモジュールとしてPythonに読み込まれる。実行中スクリプトのモジュールの名前は、__name__という名前の変数に設定されているため、直接スクリプトファイル実行した場合はこのif文がtrueとなる。
  • なので、例えばimportされた状態のスクリプトでは、__name__という名前の変数にはモジュール名(test.pyというスクリプトをimport testでインポートした場合はtest)が入る
  • __name__変数の値を見る事で、直接実行されてるのかimportされてるのかの判断が可能。

個人的には、javaで言うmainメソッドのようなもの。
って言うとしっくりくる。

以下のサイトが分かりやすかった。
azuuun-memorandum.hatenablog.com