23.1 缩进的思考

    wKioL1lyGfiTBXP8AAErx8FZbs0093.png-wh_50                       

 

  参考20.1.2

  为什么第一条print语句(第11行)参与while循环,打印多次。而,第二条print语句(15)不参与循环只打印一次?

  难道是第14行空行的原因?

wKiom1lyGhmDCIlpAAEFPFZZ20g937.png-wh_50

   去掉空行后,没有影响!

   难道是缩进的原因?

 

wKioL1lyGjrQi85EAAE2iOsuSdE345.png-wh_50

 个人自行实验:缩进1个空格,或3个,4个空格试试

 

Python的缩进规则参考下面链接

http://www.cnblogs.com/tt-0411/archive/2011/11/11/2245693.html

23.2 缩进的各种情况

代码

wKiom1lyGljh2Y3mAABFASik4VQ977.png-wh_50

运行结果

wKiom1lyGnPBtlJsAAAsIjg7_VU101.png-wh_50

S=0,为假,所以打印#############

 

如果不缩进:

wKioL1lyGpexAZQ1AADycG6_ynM199.png-wh_50

如果缩进一个空格:

wKiom1lyGrXAa8CIAADWICjdlQs235.png-wh_50

缩进23456789个空格都可以。

 

wKioL1lyGtnQQAWMAADXgWF2f0c907.png-wh_50

 缩进空格不一致也可以,但是不能有不缩进的情况。

 

 

wKiom1lyGvXSkJGpAAChehHurVI307.png-wh_50

风格一样也可以,一个空格,另一个tab

 

 

23.3语句块

wKiom1lyGxeAw7onAAA8EAVGV34252.png-wh_50

   其中,语句块可以是一条语句,也可以是多条语句。

   问题是:如何控制if语句的语句块包含几条执行语句?

wKioL1lyGzDxirE3AAEKMwV0To0716.png-wh_50

  因为67都有缩进是If下面的两条执行语句,所以属于if的控制范围;

因为910else下面的两条执行语句,所以属于else的控制范围;

23.4 语句块的控制

wKiom1lyG1CSMYjUAADW1UrSBOk691.png-wh_50

         那么第8行缩进一个空格是否可以呢?

 

wKioL1lyG22xwbDyAADN1gjrSOA083.png-wh_50

在同一个语句块里面,缩进空格个数要一致!

 

wKiom1lyG47ylLqcAAEfX-M6FTM808.png-wh_50

在同一个语句块里面,缩进风格要一致。

 

wKiom1lyG7DzxhDOAAEu8yIL45I413.png-wh_50

  不同语句块,缩进空格个数内部要一致。

  If语句块统一空2个空格,else语句块统一tab缩进也OK

 

wKiom1lyG8yTVRj6AAE-Ygg4eJQ429.png-wh_50

  10条语句以不缩进类脱离else语句块的控制!

 

 

23.5 总结

     类似Iffor,while的语句块缩进规则:

1:一定要有缩进

2:在语句块内一定要统一,不能一个执行语句缩进1个空格,另一个执行语句缩进2个空格;

3:在语句块内风格也必须一致,不能一条语句空格缩进,另一条语句tab缩进

4:最后的独立语句不能缩进