Python 中的 if __name__ == '__main__'

程序入口
C 和 C++ 都需要有一个 main 函数来作为程序的入口,也就是程序的运行会从 main 函数开始
Python 则有不同,它属于脚本语言,动态的逐行解释运行。也就是从脚本第一行开始运行,没有统一的入口。

一个 Python 源码文件除了可以被直接运行外,还可以作为模块(也就是库)被导入。不管是导入还是直接运行,最顶层的代码都会被运行(Python 用缩进来区分代码层次)。而实际上在导入的时候,有一部分代码我们是不希望被运行的。

if __name__ == '__main__' 就相当于是 Python 模拟的程序入口。
__name__ 是当前模块名,当模块被直接运行时模块名为 __main__
当模块被直接运行时,以下代码块将被运行,当模块是被导入时,代码块不被运行。

参考:http://blog.konghy.cn/2017/04/24/python-entry-program/

猜你喜欢

转载自blog.csdn.net/baidu_27643275/article/details/80280046