编程派|为什么我不推荐写 main 函数?( 二 )
我每次看到这种不假思索的累赘代码 , 就觉得难受 。 为什么要写那行 if 语句呢?可能的话 , 应该拆分 main 函数 , 甚至不必封装成一个函数啊!
我个人总结出以下的经验:
- 打破惯性思维 , 写出地道的代码 。 main 入口函数是某些语言特有的 , 不该在 Python 中“照猫画虎” , 应该了解脚本语言的特点 , 写出简洁优雅的风格
- 使用 main.py 而非 main 。 因为 Python 的程序执行单位其实是脚本文件 , 而非某个函数或者类 , 所以建议把入口文件命名为 main.py , 内部的函数按需求而定
- 可以的话 , 使用 __ main __ .py 作为入口文件 。 这个文件结合命令行的“-m”参数使用 , 非常好用 。 推荐阅读: Python 中 -m 的典型用法、原理解析与发展演变
- 不推荐写 if __name __ == '__ main __ '。 首先 , 如果只有一个文件的话 , 因为不存在导出的可能 , 不建议写 。 其次 , 存在多文件时 , 入口文件(main.py)中极不推荐写这一句 , 此文件的代码逻辑应该精炼 , 理论上其内容不该被导出到其它模块使用 , 因为它是起点!最后 , 多文件的非入口文件也不建议写 , 因为在非入口文件中写这个判断 , 最大的作用就是写一些测试代码 , 但是测试代码应该分离出来 , 写到专门的目录或文件中 。
本文属于“Python为什么”系列文章(Python猫出品) , 该系列主要关注 Python 的语法、设计和发展等话题 , 以一个个“为什么”式的问题为切入点 , 试着展现 Python 的迷人魅力 。 部分话题会推出视频版 , 请在 B 站收看 , 观看地址: https://space.bilibili.com/97566624/video
推荐阅读
- 思丝如针|47岁离异男:想找一个二婚对象,为什么这么不容易?
- 潇妈聊育儿|“到饭点才喊你的饭局,除非是铁哥们,否则别去”!这是为什么?
- 乳酸菌|为什么乳酸菌对我们的健康很重要?
- 朱棣|朱棣死之前是怎么安排传位的呢?为什么朱棣很被动?
- 九子|为什么龙生九子各不相同?看看这九子的母亲都是谁
- 售楼|为什么越来越多购房者避开毛坯房?听完售楼哥们的话庆幸早知道
- 李寻欢|《多情剑客无情剑》李寻欢:小李飞刀,为什么不是排第一?
- 文化|河南约7000年文化老城,县名朗朗上口,为什么大多数人总会念错?
- 朱元璋|朱元璋和马皇后生了那么多儿子,为什么朱元璋最喜欢朱标?
- 吕后|吕后为什么给一个大臣下跪,史书不会告诉你
