Python循环语句中else的用法总结


Posted in Python onSeptember 11, 2016

前言

本文讨论Python的for…elsewhile…else等语法,这些是Python中最不常用、最为误解的语法特性之一。

Python中的forwhile等循环都有一个可选的else分支(类似if语句和try语句那样),在循环迭代正常完成之后执行。换句话说,如果我们不是以除正常方式以外的其他任意方式退出循环,那么else分支将被执行。也就是在循环体内没有break语句、没有return语句,或者没有异常出现。

下面我们来看看详细的使用实例。

一、 常规的 if else 用法

x = True
if x:
 print 'x is true'
else:
 print 'x is not true'

二、if else 快捷用法

这里的 if else 可以作为三元操作符使用。

mark = 40
is_pass = True if mark >= 50 else False
print "Pass? " + str(is_pass)

三、与 for 关键字一起用

在满足以下情况的时候,else 下的代码块会被执行:

     1、for 循环里的语句执行完成

     2、for 循环里的语句没有被 break 语句打断

# 打印 `For loop completed the execution`
for i in range(10):
 print i
else:
 print 'For loop completed the execution'
# 不打印 `For loop completed the execution`
for i in range(10):
 print i
 if i == 5:
 break
else:
 print 'For loop completed the execution'

四、与 while 关键字一起用

和上面类似,在满足以下情况的时候,else 下的代码块会被执行:

     1、while 循环里的语句执行完成

     2、while 循环里的语句没有被 break 语句打断

# 打印 `While loop execution completed`
a = 0
loop = 0
while a <= 10:
 print a
 loop += 1
 a += 1
else:
 print "While loop execution completed"
# 不打印 `While loop execution completed`
a = 50
loop = 0
while a > 10:
 print a
 if loop == 5:
 break
 a += 1
 loop += 1
else:
 print "While loop execution completed"

五、与 try except 一起用

try except 一起使用时,如果不抛出异常,else里的语句就能被执行。

file_name = "result.txt"
try:
 f = open(file_name, 'r')
except IOError:
 print 'cannot open', file_name
else:
 # Executes only if file opened properly
 print file_name, 'has', len(f.readlines()), 'lines'
 f.close()

总结

关于Python中循环语句中else的用法总结到这就基本结束了,这篇文章对于大家学习或者使用Python还是具有一定的参考借鉴价值的,希望对大家能有所帮助,如果有疑问大家可以留言交流。

Python 相关文章推荐
Python编写的com组件发生R6034错误的原因与解决办法
Apr 01 Python
Python 爬虫图片简单实现
Jun 01 Python
Python实现向服务器请求压缩数据及解压缩数据的方法示例
Jun 09 Python
浅谈python中的数字类型与处理工具
Aug 02 Python
简单了解什么是神经网络
Dec 23 Python
Python多进程multiprocessing.Pool类详解
Apr 27 Python
基于Python的Post请求数据爬取的方法详解
Jun 14 Python
PyQt5实现从主窗口打开子窗口的方法
Jun 19 Python
python各类经纬度转换的实例代码
Aug 08 Python
Django认证系统实现的web页面实现代码
Aug 12 Python
Python利用 utf-8-sig 编码格式解决写入 csv 文件乱码问题
Feb 21 Python
深入分析python 排序
Aug 24 Python
python字典键值对的添加和遍历方法
Sep 11 #Python
解决Python 遍历字典时删除元素报异常的问题
Sep 11 #Python
完美解决python遍历删除字典里值为空的元素报错问题
Sep 11 #Python
python 循环遍历字典元素的简单方法
Sep 11 #Python
遍历python字典几种方法总结(推荐)
Sep 11 #Python
python遍历 truple list dictionary的几种方法总结
Sep 11 #Python
浅谈python中的变量默认是什么类型
Sep 11 #Python
You might like
重置版游戏视频
2020/04/09 魔兽争霸
php中获得视频时间总长度的另一种方法
2011/09/15 PHP
PHP生成随机用户名和密码的实现代码
2013/02/27 PHP
php中文字符串截取多种方法汇总
2016/10/06 PHP
php/JS实现的生成随机密码(验证码)功能示例
2019/06/06 PHP
Jquery+CSS3实现一款简洁大气带滑动效果的弹出层
2013/05/15 Javascript
select、radio表单回显功能实现避免使用jquery载入赋值
2013/06/08 Javascript
浅析tr的隐藏和显示问题
2014/03/05 Javascript
js函数调用的方式
2014/05/06 Javascript
CSS或者JS实现鼠标悬停显示另一元素
2016/01/22 Javascript
JavaScript+html5 canvas实现图片破碎重组动画特效
2016/02/22 Javascript
javascript 初学教程及五子棋小程序的简单实现
2017/07/04 Javascript
Vue 全局loading组件实例详解
2018/05/29 Javascript
在 vue-cli v3.0 中使用 SCSS/SASS的方法
2018/06/14 Javascript
小程序红包雨的实现示例
2019/02/19 Javascript
vue自动化路由的实现代码
2019/09/30 Javascript
python sys模块sys.path使用方法示例
2013/12/04 Python
python获取网页状态码示例
2014/03/30 Python
如何使用VSCode愉快的写Python于调试配置步骤
2018/04/06 Python
python线程中同步锁详解
2018/04/27 Python
Django 实现购物车功能的示例代码
2018/10/08 Python
PyQt5响应回车事件的方法
2019/06/25 Python
Python绘制股票移动均线的实例
2019/08/24 Python
Python实现的爬取豆瓣电影信息功能案例
2019/09/15 Python
Python实现快速排序的方法详解
2019/10/25 Python
python删除某个目录文件夹的方法
2020/05/26 Python
详解Python IO口多路复用
2020/06/17 Python
基于HTML5 的人脸识别活体认证的实现方法
2016/06/22 HTML / CSS
中国电子产品外贸网站:MiniIntheBox
2017/02/06 全球购物
世界领先的艺术图书出版社:TASCHEN
2018/07/23 全球购物
模具专业毕业推荐信
2014/03/08 职场文书
警示教育活动总结
2014/05/05 职场文书
爬山的活动方案
2014/08/16 职场文书
党员个人自我剖析材料
2014/10/08 职场文书
检察院起诉书
2015/05/20 职场文书
2019餐饮行业创业计划书!
2019/06/27 职场文书