> For the complete documentation index, see [llms.txt](https://l1nwatch.gitbook.io/interview_exercise/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://l1nwatch.gitbook.io/interview_exercise/stackoverflow-about-python/namemain-de-zuo-yong.md).

# name=main的作用

当 Python 解析器读取一个源文件时，它会执行所有的代码。在执行代码前，会定义一些特殊的变量。如果解析器运行的模块（源文件）作为主程序，它会把 `__name__` 变量设置成 `__main__`，如果只是引入其他的模块，`__name__` 变量将会设置成模块的名字

这么做的原因是有时你需要你写的模块既可以直接执行，还可以被当做模块导入到其他模块中去。通过检查是不是主函数，可以让你的代码只在它作为主程序运行时执行，而当其他人调用你的模块中的函数时不必执行

更多详情可以查看该[网址](http://ibiblio.org/g2swap/byteofpython/read/module-name.html)
