浅析Python中else语句块的使用技巧


Posted in Python onJune 16, 2016

学过C/C++的都知道,else语句是和if语句搭配使用的,但是在Python中,else语句更像是作为一个模块,不仅仅可以和if语句搭配,还可以和循环语句,异常处理语句搭配使用。

下面逐个进行介绍:

<1> if 语句

条件表达式为真的时候,执行代码块1,否则执行代码块2. (其实就是一个二选一的问题,必然有一个执行)

浅析Python中else语句块的使用技巧

Python中if...else...的扩展模式:多个if条件判断,如下图所示:整个代码块的执行,是顺着某些箭头方向走到结束(图中的黑点)。

这里需要注意的是,表达式1,2,3是有优先级的,优先级由高到低。所以对于某些应用,把出现概率高的条件判断放在前面判断,效率会比较高。

比如:班级的成绩分布80~60区间的人数概率较高,如果要给班级同学成绩分ABCD等级,应该把概率高的区间先判断。

浅析Python中else语句块的使用技巧

<2>while ,for 循环语句

Python中的循环语句(无论是while 还是for)中,经常配合continue和break语句,两者的区别这里不做介绍。

另外还可以和else语句块搭配,当循环正常结束的时候才会执行一遍else语句块;如果是非正常结束的(例如break语句跳出,出现异常等情况),则不会执行else语句块。

#求最大公约数
def get_max_factor(arg):
  cnt = arg/2
  while cnt > 1:
    if arg%cnt == 0:
      print "Max factor of %s is %s"%(arg,cnt)
      break
    cnt -= 1
  else:
    print "%s is prime."%arg
if __name__ == "__main__":
  for i in range(10,20):
    get_max_factor(i)

##########结果############
Max factor of 10 is 5
11 is prime.
Max factor of 12 is 6
13 is prime.
Max factor of 14 is 7
Max factor of 15 is 5
Max factor of 16 is 8
17 is prime.
Max factor of 18 is 9
19 is prime.

以上代码,当循环正常退出,即arg不会被2~arg/2间的任意整数整除的时候,才会执行else语句块。这也说明了arg是一个素数。

<3>try:....esle:.....

以上所述是小编给大家介绍的Python中else语句块的使用技巧的相关知识,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
Python 正则表达式操作指南
May 04 Python
python中self原理实例分析
Apr 30 Python
Python制作简易注册登录系统
Dec 15 Python
python进阶_浅谈面向对象进阶
Aug 17 Python
Python使用回溯法子集树模板解决迷宫问题示例
Sep 01 Python
Python序列循环移位的3种方法推荐
Apr 09 Python
pycharm远程开发项目的实现步骤
Jan 20 Python
python实现词法分析器
Jan 31 Python
Python小程序之在图片上加入数字的代码
Nov 26 Python
pycharm-professional-2020.1下载与激活的教程
Sep 21 Python
通过Django Admin+HttpRunner1.5.6实现简易接口测试平台
Nov 11 Python
python3爬虫中多线程的优势总结
Nov 24 Python
python基础教程之分支、循环简单用法
Jun 16 #Python
python3音乐播放器简单实现代码
Apr 20 #Python
使用python3.5仿微软记事本notepad
Jun 15 #Python
python3.5仿微软计算器程序
Mar 30 #Python
Python的Asyncore异步Socket模块及实现端口转发的例子
Jun 14 #Python
Python实现TCP/IP协议下的端口转发及重定向示例
Jun 14 #Python
Python实现TCP协议下的端口映射功能的脚本程序示例
Jun 14 #Python
You might like
对于ThinkPHP框架早期版本的一个SQL注入漏洞详细分析
2014/07/04 PHP
JavaScript 学习笔记(六)
2009/12/31 Javascript
基于jquery的兼容各种浏览器的iframe自适应高度的脚本
2010/08/13 Javascript
javascrpt绑定事件之匿名函数无法解除绑定问题
2012/12/06 Javascript
jquery和ajax的关系详细介绍
2013/11/29 Javascript
判断字符串的长度(优化版)中文占两个字符
2014/10/30 Javascript
jQuery中:visible选择器用法实例
2014/12/30 Javascript
谈谈JavaScript中的几种借用方法
2016/08/09 Javascript
react.js使用webpack搭配环境的入门教程
2017/08/14 Javascript
微信小程序实现轮播图效果
2017/09/07 Javascript
jQuery发请求传输中文参数乱码问题的解决方案
2018/05/22 jQuery
JavaScript函数apply()和call()用法与异同分析
2018/08/10 Javascript
详解如何理解vue的key属性
2019/04/14 Javascript
vue element自定义表单验证请求后端接口验证
2019/12/11 Javascript
微信小程序实现同时上传多张图片
2020/02/03 Javascript
python中的列表推导浅析
2014/04/26 Python
Python代码调试的几种方法总结
2015/04/15 Python
使用Python的内建模块collections的教程
2015/04/28 Python
Python多线程结合队列下载百度音乐的方法
2015/07/27 Python
Python列表推导式与生成器用法分析
2018/08/02 Python
Python csv文件的读写操作实例详解
2019/11/19 Python
Django 项目通过加载不同env文件来区分不同环境
2020/02/17 Python
python GUI库图形界面开发之PyQt5简单绘图板实例与代码分析
2020/03/08 Python
python 获取当前目录下的文件目录和文件名实例代码详解
2020/03/10 Python
tensorflow 大于某个值为1,小于为0的实例
2020/06/30 Python
python matplotlib工具栏源码探析二之添加、删除内置工具项的案例
2021/02/25 Python
财务分析个人的自荐书范文
2013/11/24 职场文书
四风问题个人自查剖析材料思想汇报
2014/09/21 职场文书
党的群众路线教育实践活动个人对照检查剖析材料
2014/09/23 职场文书
2015年国庆节慰问信
2015/03/23 职场文书
2015暑期工社会实践报告
2015/07/13 职场文书
2015年支教教师工作总结
2015/07/22 职场文书
家长会后的感想
2015/08/11 职场文书
2016国培学习心得体会
2016/01/08 职场文书
Python实现生活常识解答机器人
2021/06/28 Python
vue如何清除浏览器历史栈
2022/05/25 Vue.js