Pythonで知っておくと良い関数・機能等のメモです。
if __name__ == “__main__”:
Pythonを学習していくとこんな変わった式に出会います。
スクリプトが単体で実行された時に特定の動作をさせたいときに使います。他のファイルから読み込んで実行したときには動作しないようにする仕組みです。
Pythonの各ファイル(モジュール)には、__name__
という特別な変数があります。Pythonファイルが実行されると、”__name__
“にはファイル(モジュール)の名前が代入されます。
if __name__ == “__main__”; が記載されているファイルが実行されると 「__name__ 」には「__main__」という値が入り、TRUEとなりこのファイルにかいてあるプログラムが実行されます。
例)
0 1 2 3 4 5 6 |
def main(): print("Hello, World!") if __name__ == "__main__": main() |
test.pyというファイルに上記のソースが記載されています。test.pyを実行するとif文がTrueとなりmain()関数が実行されます。これを他のファイルからインポートして実行すると右辺は__main__ですが、左辺が読み込んだファイル名(sample.py)のようになるのでFalseとなりmain()は実行されません。