浅析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 自动安装 Rising 杀毒软件
Apr 24 Python
python面试题小结附答案实例代码
Apr 11 Python
python3 pygame实现接小球游戏
May 14 Python
python中metaclass原理与用法详解
Jun 25 Python
Pycharm远程调试原理及具体配置详解
Aug 08 Python
Python学习笔记之集合的概念和简单使用示例
Aug 22 Python
Python数据可视化:泊松分布详解
Dec 07 Python
PyTorch中permute的用法详解
Dec 30 Python
TENSORFLOW变量作用域(VARIABLE SCOPE)
Jan 10 Python
python实现在线翻译功能
Mar 03 Python
Python实现GIF图倒放
Jul 16 Python
python如何删除列为空的行
Jul 17 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
php执行sql语句的写法
2009/03/10 PHP
PHP的Laravel框架中使用AdminLTE模板来编写网站后台界面
2016/03/21 PHP
TP5框架实现签到功能的方法分析
2020/04/05 PHP
JQuery 插件模板 制作jquery插件的朋友可以参考下
2010/03/17 Javascript
js 获取子节点函数 (兼容FF与IE)
2010/04/18 Javascript
jQuery中调用WebService方法小结
2011/03/28 Javascript
Js日期选择自动填充到输入框(界面漂亮兼容火狐)
2013/08/02 Javascript
动态标签 悬停效果 延迟加载示例代码
2013/11/21 Javascript
Javascript 完美运动框架(逐行分析代码,让你轻松了运动的原理)
2015/01/23 Javascript
javascript转换日期字符串为Date日期对象的方法
2015/02/13 Javascript
DOM操作一些常用的属性汇总
2015/03/13 Javascript
详解JavaScript中的异常处理方法
2015/06/16 Javascript
使用jQuery mobile库检测url绝对地址和相对地址的方法
2015/12/04 Javascript
AngularJS自动表单验证
2016/02/01 Javascript
jQuery基于排序功能实现上移、下移的方法
2016/11/26 Javascript
JavaScript易错知识点整理
2016/12/05 Javascript
JavaScript 字符串数字左补位,右补位,取固定长度,截位扩展函数代码
2017/03/25 Javascript
详解webpack的配置文件entry与output
2017/08/21 Javascript
强大的JavaScript响应式图表Chartist.js的使用
2017/09/13 Javascript
vue axios同步请求解决方案
2017/09/29 Javascript
JavaScript数组push方法使用注意事项
2017/10/30 Javascript
解决vue的 v-for 循环中图片加载路径问题
2018/09/03 Javascript
vue.js中导出Excel表格的案例分析
2019/06/11 Javascript
Vue脚手架编写试卷页面功能
2020/03/17 Javascript
[00:21]DOTA2亚洲邀请赛 Logo演绎
2015/02/07 DOTA
python开发的小球完全弹性碰撞游戏代码
2013/10/15 Python
python编码总结(编码类型、格式、转码)
2016/07/01 Python
详解python中Numpy的属性与创建矩阵
2018/09/10 Python
Python3最长回文子串算法示例
2019/03/04 Python
Python 可变类型和不可变类型及引用过程解析
2019/09/27 Python
Python导入模块包原理及相关注意事项
2020/03/25 Python
EQVVS官网:设计师男装和女装
2018/10/24 全球购物
2019年Java面试必问之经典试题
2012/09/12 面试题
家居饰品店创业计划书
2014/01/31 职场文书
尊老爱亲美德少年事迹材料
2014/08/14 职场文书
镇副书记专题民主生活会对照检查材料思想汇报
2014/10/02 职场文书