首页 >后端开发 >Python教程 >`if __name__ == '__main__':` 在 Python 中做什么?

`if __name__ == '__main__':` 在 Python 中做什么?

Mary-Kate Olsen
Mary-Kate Olsen原创
2024-12-27 08:41:10146浏览

What Does `if __name__ ==

'if name == "__main__":' 做什么?

当运行 Python 脚本作为主程序时,它会分配将硬编码字符串“__main__”写入 name 变量。如果脚本由另一个模块导入,则 name 被分配给用于导入的名称;例如,如果另一个脚本将 foo.py 导入为 import foo,则 foo.py 中的 name 变量将变为“foo”。

通过检查 name 是否为等于“__main__”,它确保守卫中的代码仅在直接运行脚本时执行,而不是在作为脚本导入时执行

为什么这是必要的?

包含 if __name__ == "__main__": 语句有几个好处:

  1. 防止不必要的执行: 如果脚本是由其他模块导入的,则守卫内的代码不会被执行,防止意外执行code.
  2. 不同上下文的不同行为:它允许基于上下文执行不同的代码(作为主程序或作为模块运行)。例如,您可以拥有仅在直接运行脚本时执行的某些函数,或者仅当脚本作为主程序运行时才执行初始化或设置例程。
  3. 防止指定argument: 将脚本作为模块导入时,导入的脚本可能有自己的命令行参数解析代码。 if __name__ == "__main__": 保护可防止导入的脚本使用导入脚本的命令行参数意外运行。

以上是`if __name__ == '__main__':` 在 Python 中做什么?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn