![46e3e14a5e5848ad86df932ff0409423.png](https://img-blog.csdnimg.cn/img_convert/46e3e14a5e5848ad86df932ff0409423.png)
有了前面的数据类型,运算符,接下来讲控制语句,大家理解起来就会比较容易一些。总结了一些python的控制语句如下:
1,if...else
2,if ...elif...elif......else
3,for ... in ...:
4,while ...:
5,for ...:else:
6,while ..: else:
7,with ... as:
8,try:..except:... finally:
9:三目运算:python没有三木运算,但是有类似的语法:a=b if 条件 else c
10,switch函数。python没有switch函数,但可以使用字典来实现。
有了控制语句,可以帮助你实现各种复杂逻辑的功能。本文只演示简单的用法,也只能告诉你怎么用,毕竟,业务总是千变万化的,具体需要自己多练习,多总结。
本文讲前五种控制语句。
先说明:
1,如果没有具体的运算符(一般是比较运算符),如果要运行函数体内的语句,则条件必须为真,即非空,非0,不是False,不是None,长度不是0等.
2,有运算符,则根据运算符来判断,条件成立则运行。
3,所有的控制语句都可以嵌套使用,但需慎用。
1,if ...else
这是最常见最基本的控制语句,if可以单独使用,也可以和else一起用:
![df88aec639e4f10a1b2c6074992940ef.png](https://img-blog.csdnimg.cn/img_convert/df88aec639e4f10a1b2c6074992940ef.png)
2,if ...elif...elif......else
这个主要用于有多种并列条件的情况。
![ca130ae9f4af71cf8ad996c4036b048c.png](https://img-blog.csdnimg.cn/img_convert/ca130ae9f4af71cf8ad996c4036b048c.png)
但如果条件很多的话,语句就太累赘了,一般不建议这么写,会显得太笨拙。那你肯定要问怎么写,这个很难说,毕竟业务是不同的,没有统一的说法,还是要根据你的业务凝练出来。文末今天出一道,可以针对这点来说一下。
3,for ... in:
python中最常用的循环遍历语句,可以遍历任何序列的项目(字符串,列表。。。)下面看例子吧!
![46930977b214e4044a1ed0af0813912f.png](https://img-blog.csdnimg.cn/img_convert/46930977b214e4044a1ed0af0813912f.png)
![b4f071c666af89cd85e2898a7624405d.png](https://img-blog.csdnimg.cn/img_convert/b4f071c666af89cd85e2898a7624405d.png)
![48663dca5a9bbede2505a60352d902bc.png](https://img-blog.csdnimg.cn/img_convert/48663dca5a9bbede2505a60352d902bc.png)
更多数据类型的遍历,多动手练练吧!
4,while
当条件处于某个状态,范围之内时,重复执行操作。例子:
![e7dc53f310b15ec52c43af4711cf81d2.png](https://img-blog.csdnimg.cn/img_convert/e7dc53f310b15ec52c43af4711cf81d2.png)
5,for ...else
字面意思理解就是遍历完某个对象,如果没有满足逻辑条件,则执行else的语句。如果满足,则使用break语句中断循环,且不执行else
举例一个应用场景:查询图书馆中有没有某本书。
![fea4e0f1ff271ef1b97ae8c7b692d5ef.png](https://img-blog.csdnimg.cn/img_convert/fea4e0f1ff271ef1b97ae8c7b692d5ef.png)
如上图,找到书之后,直接退出整个循环,不再执行剩余循环。
如果把判断条件改成if b=="bookname5"会发生什么呢?大家动手试试看。
附加:
配合for,while循环使用的又continue,break。前者是跳出当前循环,不再执行当前循环剩余的语句;后者是完全退出循环,停止运行整个循环体,上面查找图书的例子可证明。
为理解continue,且看以下例子:
![ea13ce2311f7560fa2adfc4b67dbc652.png](https://img-blog.csdnimg.cn/img_convert/ea13ce2311f7560fa2adfc4b67dbc652.png)