当前位置: 首页 > 后端技术 > Python

为什么Python放弃繁琐的花括号,用缩进来划分代码块?

时间:2023-03-26 11:56:38 Python

为什么Python要用缩进来划分代码块?大家好,这里是《WhyPython》系列的文字记录(查看地址在文末)。本期话题:为什么Python使用缩进来划定代码块,而不像其他语言使用花括号{}或“结束”语法?Python缩进是一个老生常谈的话题,而且经常被提及。比如Python之父上个月刚好转发了一篇文章:因为这篇文章,Guido还受邀在PythonBytes播客上录制了一篇文章。插曲:那么,为什么Python要用缩进来划分代码块呢?我搜集整理了几份资料,接下来就带大家揭秘Python这样做的设计原因:缩进语法,更优雅的缩进语法,更清晰的缩进使用,一致性,避免误读。代码更加紧凑,易于浏览,没有繁琐的缩进使用,足以让解释器执行。无需使用冗余符号来强制缩进。它来自古老的ABC语言。Guido是这种语言的设计者之一。他的想法可能来自DonKnuth(高德纳,著名计算机科学家,经典名著《计算机程序设计艺术》的作者),他在1974年提出,使用缩进在当时是非常时髦和前卫的,这样可以结束卷曲函数名后面的大括号或者另一行的终极辩论(据说这个话题可以让不同派系的程序员打架!)以上列举的原因主要来源于Python官方文档,官方wiki,以及早期对蟒蛇之父。总而言之,Python使用缩进语法,体现了其非常优雅清晰的设计美学,对开发者、读者和解释者都极为友好。说实话,我个人非常推崇Python的缩进,所以一见倾心。如果使用花括号之类的语法,那么Python就会一下子变得黯淡无光,鸡肋!您如何看待Python的缩进语法?欢迎在评论区发表你的看法!参考资料:1、Guido发的推特:https://twitter.com/gvanrossum/status/12495490915848929282,Guido转发的关于缩进的文章:https://web.archive.org/web/20070922223915/http://www.secnetix.de/~olli/Python/block_indentation.hawk3,Guido在PythonBytes播客上谈论缩进:https://pythonbytes.fm/episodes/show/179/guido-van-rossum-drops-in-on-python-bytes4。视频版播客:https://www.youtube.com/watch?v=PlvvVXeU0yw&feature=youtu.be5。官方文档对缩进的解释:https://docs.python。org/3/faq/design.html#why-does-python-use-indentation-for-grouping-of-statements6.来自早期官方wiki的解释:https://wiki.python.org/moin/Why%20separate%20sections%20by%20indentation%20instead%20of%20by%20brackets%20or%20%27end%277、池建强老师MacTalk文章:https://mp.weixin.qq.com/s?__biz=MjM5ODQ2MDIyMA==&mid=2650715803&idx=1&sn=94cd823de3689f40d4ed4c541a1ee791首发地址:https://mp.weixin.qq.com/s/by...视频地址:1.B站:https://www.bilibili.com/视频/BV1UT4y137Yv/2,知乎:https://www.zhihu.com/zvideo/1242823762849959936