Python - __name__ == '__main__' 到底是什么意思
总结
1.import 在导入文件的时候,会自动把所有“暴露在外面的代码”全都执行一遍。
2.如果你要把一个东西封装成模块(可以被别人import),又想让它单独可以执行的话(例如执行一些单元测试),你必须将要执行的代码放在 if __name__ == '__main__'下面。
3.这两种情况中__name__的值是不同的:
- 当一个模块被直接执行时,其__name__必然等于__main__;
- 当一个模块被引用时,其__name__必然等于文件名(不含.py)
所以利用判断__name__ == '__main__'的真假就可以将这两种情况区分出来。
详细说明
项目结构如下:
.
├── utils.py
├── utils_with_main.py
├── main.py
└── main_2.py
参考文献
链接:https://b.geekbang.org/member/course/detail/99275
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
2021-04-19 Redis - 缓存穿透,缓存击穿,缓存雪崩,缓存污染
2021-04-19 Redis - 哨兵模式 sentinel + 故障转移 failover + 哨兵选举 + 脑裂现象
2021-04-19 Redis - Redis主从复制,读写分离
2019-04-19 MDX Query - mdx的基本语法和概念