IndentationError: expected an indented block解决方案

自学python,第一次遇到python的运行异常,竟然是这个鬼:

IndentationError: expected an indented block

把这段英文报错翻译过来就是: 缩进错误: 期望一个缩进的块
贴下报错的代码的截图便于观察分析:
这里写图片描述

好了,直接开始单刀直入解决这个问题,解决方案,在报错的逻辑代码的前面加个空格就一切ok了,一个缩进就解决了这个异常,解决这个bug不是主要目的,了解python的语法结构和特点才是我们该做的事情。
1.不像其他语言(C++, java 等等),就拿java举个例子:我们都知道在java里面方法后面是用{}来区分是否属于一个方法的,但在python里面方法体并不使用{}来区分,python的是用缩进来识别语法逻辑块的(i.e. if, while, for, def 等)。同一个if逻辑块下面的语句必须要有相同的缩进,否则python解析器怎么知道if块控制哪些语句?对吧,在python中,所有的逻辑代码块也就是一个方法中的代码,都必须使用相同的缩进来标识区分是同一个方法,否则编译会报错。贴个图解释下:
这里写图片描述
2、所谓缩进,就是每一行开头的空白。这个空白可以由多个空格或者制表符组成。python下面你怎么缩进都可以,比如3个空格,2个tab,这样都是合法的。但是同一个逻辑块下面必须用一样的。这一点在上面的图片和文字中已经做过解释和说明。

以上是本人的一点总结,以后有新的经验或者这方面的认知升级后,会重新完善该篇内容,如果有不对的地方欢迎留言指正改进,感激不尽!

猜你喜欢

转载自blog.csdn.net/wjj1996825/article/details/80924555