Skip to main content

29.4. __main__ —顶级脚本环境


'__main__' 是顶层代码执行的作用域的名称。当从标准输入,脚本或交互式提示读取时,模块的__name__设置为等于 '__main__'

模块可以通过检查它自己的 __name__ 来发现它是否在主范围中运行,这允许在模块中作为脚本或 python -m 运行时有条件地执行代码的公共习语,而不是当它被导入时:

if __name__ == "__main__":
    # execute only if run as a script
    main()

对于包,通过包括 __main__.py 模块可以实现相同的效果,当模块以 -m 运行时,其内容将被执行。