23.1 缩进的思考
参考20.1.2
为什么第一条print语句(第11行)参与while循环,打印多次。而,第二条print语句(第15行)不参与循环只打印一次?
难道是第14行空行的原因?
去掉空行后,没有影响!
难道是缩进的原因?
个人自行实验:缩进1个空格,或3个,4个空格试试
Python的缩进规则参考下面链接
http://www.cnblogs.com/tt-0411/archive/2011/11/11/2245693.html
23.2 缩进的各种情况
代码
运行结果
S=0,为假,所以打印#############
如果不缩进:
如果缩进一个空格:
缩进2,3,4,5,6,7,8,9个空格都可以。
缩进空格不一致也可以,但是不能有不缩进的情况。
风格一样也可以,一个空格,另一个tab。
23.3语句块
其中,语句块可以是一条语句,也可以是多条语句。
问题是:如何控制if语句的语句块包含几条执行语句?
因为6,7都有缩进是If下面的两条执行语句,所以属于if的控制范围;
因为9,10是else下面的两条执行语句,所以属于else的控制范围;
23.4 语句块的控制
那么第8行缩进一个空格是否可以呢?
在同一个语句块里面,缩进空格个数要一致!
在同一个语句块里面,缩进风格要一致。
不同语句块,缩进空格个数内部要一致。
If语句块统一空2个空格,else语句块统一tab缩进也OK
第10条语句以不缩进类脱离else语句块的控制!
23.5 总结
类似If,for,while的语句块缩进规则:
1:一定要有缩进
2:在语句块内一定要统一,不能一个执行语句缩进1个空格,另一个执行语句缩进2个空格;
3:在语句块内风格也必须一致,不能一条语句空格缩进,另一条语句tab缩进
4:最后的独立语句不能缩进