加入收藏 | 设为首页 | 会员中心 | 我要投稿 南京站长网 (https://www.025zz.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 编程要点 > 语言 > 正文

写 Python 脚本时,一定要带上这个

发布时间:2021-11-02 14:24:19 所属栏目:语言 来源:互联网
导读:我发现有不少朋友写 Python 脚本非常随意,要么不用函数,要么函数随处定义,反正第一眼看不出要执行的第一行代码位于何处,这样的脚本可读性很差,而且容易隐藏 bug,解决这个问题很简单,当我们写 Python 脚本时,一定要加上这个:def main(): # do somet
我发现有不少朋友写 Python 脚本非常随意,要么不用函数,要么函数随处定义,反正第一眼看不出要执行的第一行代码位于何处,这样的脚本可读性很差,而且容易隐藏 bug,解决这个问题很简单,当我们写 Python 脚本时,一定要加上这个:   def main():      # do something      print("do something.")      if __name__ == "__main__":      main()  你可能要反对了:我怎么爽就怎么写,凭什么听你的,多写个 if __name__...?   别急,让我说三个原因。   第一,它让 Python 文件的作用更加明确 首先需要明白 __name__ 的作用,当脚本直接被 Python 解释器执行时,其值就是 "__main__",当其被其他 Python 程序 import 的时候,其值就是对应的 Python 脚本文件名,可以在 Python 解释器验证下,假定有个 some_script.py 其内容如下:   print("some_script.py")  print(__name__)  在 Python 解释器导入一下:   ❯ vim some_script.py  ❯ python  Python 3.8.5 (v3.8.5:580fbb018f, Jul 20 2020, 12:11:27)  [Clang 6.0 (clang-600.0.57)] on darwin  Type "help", "copyright", "credits" or "license" for more information.  >>> import some_script  some_script.py  some_script  >>>  可以看到,__name__ 的值就是 Python 脚本的文件名 some_script。   也就是说 if __name__ == "__main__": 后面的代码在 import 的时候是不会运行的。   明白了这一点,if __name__ == "__main__": 就可以做为区分脚本和库的一个标志,当我们看到 if __name__ == "__main__": 时,就认为这一个可以直接运行的脚本,当没有看到这行代码时,就认为这是一个库,可以被其他程序引用,Explicit is better than implicit.,不是吗?

(编辑:南京站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读