一、条件测试
1、比较运算
(>、<、=等等)结果为bool类型
2、空不空
- 如果条件运算只写出变量名,则判断的是这个东西是不是非空,而不是这个东西是不是空。
3、逻辑运算
- and 同真为真
- or同假为假
- not 取相反
- 运算优先级非>与>或
4、存在运算
- 元素in列表/字符串
- 元素not in 。。。。。
二、分支结构
- if
- if 。。。else。。。
- if。。。else if(可以有很多个)。。。else。。。
- 可以嵌套
- 不管多少分支,最后只执行一个分支
- 和C、C++等差不多
三、for循环
-
一般形式为:for i in XXX
-
字典需要用items 进行解包后迭代
-
range()对象迭代,range经常用于迭代
-
break和continue
break和continue用法和别的语言一样,break是跳出循环,continue就是跳过本次循环 -
for else结构:
for 循环执行完毕没有被else终止,则运行else块
四、无线循环while
代码可能需要重复执行,但是又不知道要重复多少次。
- while循环可以用while…else…结构,用法和for…else…一样
- while除了用缩进表达逻辑之外别的用法和C语言中的while一样。
五、控制语句注意问题
- 尽可能少用嵌套,这样会导致可读性差,当然达到目的是第一层
- 避免死循环
- 封装过于复杂的判断,别一股往if或者while后面写太多。