if __name__ == “__main__” 

実行例は「saka.mokumoku」の「ReplIT」環境に保存してある

1.if __name__ == “__main__”の意味

 アンダースコアに惑わされずに読めば
   「__name__に格納されている値が'__main__'という文字列であれば
     この条件文以降の処理を実行するという単なるif文

 Pythonのサンプルコードにおまじないのように書かれている
   このif文の意味と使い方を説明する

2.使用例

# mymodule.py
print("mymoduleが起動されました")

# thenの部分は直接起動時、elseの部分はimportされた時
if __name__ == "__main__":
    print("このコードはmymoduleを直接実行したときに実行されます",__name__)
else:
  print("このコードはmymoduleをimportしたときに実行されます",__name__)

 上記コードの説明
   import mymoduleの場合
     トップレベルの部分が処理され以下の表示がされる
       ”mymoduleが起動されました”
     if __name__ == “__main__”:
       __name__ は「main」なのでelse処理が実行される
       ”このコードはmymoduleをimportしたときに実行されます”

   mymoduleを直接実行(mymodule.pyの起動)した場合
     トップレベルの部分が処理され以下の表示がされる
       ”mymoduleが起動されました”
     if __name__ == “__main__”:の
       __name__ は「__main__」なのでthen処理が実行される
         ”このコードはmymoduleを直接実行したときに実行されます”

# calculator.py
def add(x, y):
    return x + y

def subtract(x, y):
    return x - y

if __name__ == "__main__":
    print(add(3, 4))
    print(subtract(10, 5))

 上記コードの説明
   直接実行すると、足し算と引き算の結果が出力される
   importし、 add 関数や subtract 関数だけを利用することもできる