python系列教程132——为什么使用缩进语法

网友投稿 318 2022-11-06


python系列教程132——为什么使用缩进语法

对于习惯了类C语言的程序员而言,缩进规则乍一看可能会有点特别,但是这正是Python精心设计的特点,是Python迫使程序员写出统一、整齐并具有可读性程序的主要方式之一。这就意味着你必须根据程序的逻辑结构,以垂直对齐的方式来组织程序代码。结果就是让程序更一致并具有可读性。

根据逻辑结构将代码对齐是令程序具有可读性的主要部分,因而具备了重用性和可维护性,对自己和他人都是如此。即使你不使用Python,也应该在任何块结构的语言中对齐代码让程序更具可读性。

当我还在做全职基础开发的时候处理了许多程序员的C++程序。几乎不可避免的是,每位程序员都有自己的缩进代码的风格。例如,第一个写代码的人的缩进为四个空格:

while (x > 0) { --------; --------;

这个人后来挤进管理层,并由某个喜欢再往右缩进一点的人来接替他的位置:

while (x > 0) { --------; --------; --------; --------;

那个人后来又遇到了其他的机会,而某个接手这段代码的人喜欢少缩进一些:

while (x > 0) { --------; --------; --------; --------;--------;--------;}

在任何代码块结构的语言中,无论是Python还是其他语言,如果嵌套代码块缩进的不一致,它们将很难解释、修改或者再使用,因为代码不再能形象地反应其逻辑含义。可读性是很重要的,缩进又是可读性的主要元素。

如果你用类C语言写过很多程序的话,可能你曾经为下面的例子头疼过:

if (x) if (y) statement1;else statement2;

这个else是属于哪个if的呢?令人吃惊的是,这个else是属于嵌套的if语句[if (y)],即使它看上去很像是属于外层if (x)的。这是C语言中经典的陷阱,而且可能导致代码的修改者完全误解代码并用不正确的方式进行修改还一直找不出原因,直到产生巨大的错误为止!这种事在Python中是不可能发生的:因为缩进很重要,程序看上去什么样就意味着它将如何运行。看下面的Python语句:

if x: if y: statement1else: statement2

这个例子里,else垂直对齐的if就是其逻辑上的if(外层的if x)。从某种意义上来说,Python是WYSIWYG语言——所见即所得(what you see is what you get)。因为不管是谁写的,程序看上去的样子就是其运行的方式。

缩进没有绝对的标准:常见的是每层四个空格或一个制表符,但是你想怎么缩进以及缩进多少都由你自己决定。嵌套越深的代码块向右缩进的越厉害,越浅就越靠近前一个块。 但是要记住,不应该在同一段Python代码中混合使用制表符和空格。

不管用何种语言编写代码,都应该一致地缩进以保持可读性,这一点无论怎么强调都不过分。实际上,如果你在此前的职业生涯中没有学习如何做到这点,那么就是你的老师给你留下了伤害。他本应当教会你这一点的!


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:周公解梦大全查询梦API(周公解梦大全查询梦见死人)
下一篇:python系列教程135——复杂的赋值语句
相关文章

 发表评论

暂时没有评论,来抢沙发吧~