当前位置: 首页 > news >正文

python __name__与__main__深刻理解(涵详细解释、应用场景、代码举例、高级用法)

python __name__与__main__深刻理解(涵详细解释、应用场景、代码举例、高级用法):


一、__name__ 的核心作用

__name__ 是 Python 的内置属性,用于标识当前模块的执行环境,其值取决于模块是被直接运行 还是被导入 到其他模块中

  1. 直接运行 :当模块作为主程序执行时,__name__ 的值为 "__main__"
  2. 被导入 :当模块被其他脚本导入时,__name__ 的值为模块的文件名(不含 .py 后缀)。

二、典型应用场景
1. 隔离测试代码与功能代码 

当模块包含测试代码时,使用 if __name__ == '__main__' 可防止测试逻辑在被导入时自动执行。
示例

# utils.py
def add(a, b):
    return a + b

# 测试代码(仅在直接运行时执行)
if __name__ == '__main__':
    print(a
http://www.dtcms.com/a/85092.html

相关文章:

  • 基于WebRtc,GB28181,Rtsp/Rtmp,SIP,JT1078,H265/WEB融合视频会议接入方案
  • 工单分类总结
  • Leetcode Hot 100 35.搜索插入位置
  • 体育直播模板nba英超直播欧洲杯直播模板手机自适应
  • 实时视频分析的破局之道:蓝耘 MaaS 如何与海螺 AI 视频实现高效协同
  • [leetcode]1631. 最小体力消耗路径(bool类型dfs+二分答案/记忆化剪枝/并查集Kruskal思想)
  • 介绍 Docker 的基本概念和优势,以及在应用程序开发中的实际应用
  • Qt窗口控件之菜单栏QMenuBar
  • HTTP Header 中的 cookie 和 set-cookie
  • 笔记:介绍如何使用Docfx生成开发文档
  • 在若依框架,导出对象作为模版,填充内容可以搜索数据库数据作为下拉选择数据,一个工具类就够了【拿来就用】
  • c++:红黑树
  • Vue 中的nextTick函数的原理、作用及使用场景。
  • 蓝桥杯备赛(搜索)
  • el-table折叠懒加载支持排序
  • -PHP 应用文件管理模块包含上传遍历写入删除下载安全
  • C++调用ffmpeg解复用、解码案例
  • vue学习九
  • Apache APISIX 架构浅析
  • 巧用输出变量,提升Dolphinscheduler工作流灵活性和可维护性
  • 【多线程-第四天-自己模拟SDWebImage的下载图片功能-自定义block和传递参数 Objective-C语言】
  • 技术引领未来创新发展引擎
  • 库存扣减解决方案
  • 南京审计大学:《 面向工程审计行业的DeepSeek大模型应用指南》.pdf(免费下载)
  • 7. 【Vue实战--孢子记账--Web 版开发】-- 收支分类设置
  • MySQL 调优:查询慢除了索引还能因为什么?
  • 设计模式之责任链模式:原理、实现与应用
  • 各软件快捷键
  • 【CXX-Qt】2.5 继承
  • 基于认证的 Harbor 容器镜像仓库