1. 苏葳的备忘录首页
  2. 编程

Python的代码缩进

python c在Fortran之后,好象没见过如此对代码书写位置有严格要求的语言。 对于一个出现了不过20年的相对新型的语言来说,把代码缩进作为语法的一部分肯定有其理由。这个原因是: 程序的可读性。 无论是对C/C++,Java,C#或VB之类和Pascal之类的语言来说,语言在语句都是可以自由书写的。通过适当的方式,一个语句可以放在上一行也可以放在下一行。若在C类语言中写了下面一个语句块:

if (x==1)
     if (y==1)
             c=3;
else
    m=4;

这样的结构很容易让人产生错觉,即使实际上else语句是与y==1的条件匹配的。C类语言不管这种情况,认为编程者有自己决定分句书写位置的自由。虽然有各种各样的编程风格和规范,然而终归是一种建议,这给后续的维护者造成成了困扰。

对于python而言,缩进被定义到了语法规范中,再没有比这个更严格的要求了。这种情况下,缩进的else和不缩进的else,会产生两种不同的语法含义。而杂乱无章的缩进,会直接在解释器中报错。 python并且取消了语句块的开始和结束标记,无论是{}还是begin和end。在c或者java中,一个语句块的定义:

if ()
{
}

if(){
}

都经常被使用,风格不统一但却都合法,在阅读较大的程序时也会带来不变。Python的做法是取消了语句块定义。直接让缩进来完成一切,并且因而保持良好的可读性。这似乎也是Python简洁性的一个证明。

原创文章,作者:苏葳,如需转载,请注明出处:https://www.swmemo.com/433.html

发表评论

邮箱地址不会被公开。 必填项已用*标注