专业编程基础技术教程

网站首页 > 基础教程 正文

一文看懂:Python中的if __name__=="__main__"的含义

ccvgpt 2024-11-02 11:19:53 基础教程 6 ℃

在阅读其他人的代码时,您可能遇到过 Python 的 if __name__ == "__main__" 的用法。从语法上来说,Python 的 if __name__ == "__main__" 是一个普通的条件块,其中__name__是一个特殊的内置变量,他的作用是判断一个Python脚本是作为主程序运行还是被导入为模块

工作原理

当一个Python脚本直接执行时,__name__变量被设置为"__main__"

一文看懂:Python中的if __name__=="__main__"的含义

当一个Python脚本被作为模块导入到另一个脚本中时,__name__变量被设置为该脚本/模块的名称。

实践测试

新建一个module_a.py文件,代码如下,并运行,输出__name__的值等于__main__。

新建一个module_b.py文件,导入module_a,并运行。由输出可以发现:

  1. 因为导入了module_a,所以module_a.py文件中代码先执行,因为module_a作为导入模块运行,所以其__name__为模块名module_a。
  2. module_b.py作为主程序运行,所以其__name__等于__main__。

通过这种机制,你能够利用if __name__=="__main__"这个条件语句,编写既可以独立运行又可以被其他脚本导入的代码模块。

Tags:

最近发表
标签列表