test.py
print(__name__)
出力
__main__
test2.py
import test
出力
test
test.pyを直接実行すると__name__にstr型の__main__が代入される。
またtest.pyを外部からインポートするとstr型のファイル名testが代入される。つまり、
if __name__ == '__main__':
main()
のmain()は外部からインポートされた場合は実行されず、直接実行した場合のみ実行される。