Python中else的三种使用场景


Posted in Python onJune 16, 2021
目录

判断语句

这是最常见的用法,当if语句中的条件不满足时,将执行else语句中的代码。

a = False
if a:
    print("a为真")
else:
    print("a为假")

循环语句

如果else子句紧接在循环语句的后面,那么在以下两种情况将会执行else子句的代码:
当循环体没有执行break的时候,即循环体正常结束

print("两次输入机会")
for i in range(2):
    num = int(input("请输入一个数字:"))
    if 10 == num:
        print("10 == num,触发break,不会执行else子句")
        break
else:
    print("循环体没有执行break语句,执行else子句")
print("程序结束")

执行代码:
当触发break时,不会执行else子句:

两次输入机会
请输入一个数字:1
请输入一个数字:10
10 == num,触发break,不会执行else子句
程序结束

当没有触发break时,执行else子句:

两次输入机会
请输入一个数字:2
请输入一个数字:3
循环体没有执行break语句,执行else子句
程序结束

当while循环体完全不执行时也会执行紧跟在后面的else子句

while False:
    pass
else:
    print("循环体不执行,我也会执行")
# 执行后的输出结果:
# 循环体不执行,我也会执行

异常处理

当没有发生异常的时候会执行紧跟在异常处理代码后面的else子句

num1 = int(input("输入一个整数:"))
num2 = int(input("输入另外一个整数:"))
print('-'*20)
try:
    print("{}/{}=".format(num1,num2),num1//num2)
except ZeroDivisionError:
    print("输入非法,ZeroDivisionError")
else:
    print("输入合法")
print("程序结束")

代码执行: 当没发生异常时:

输入一个整数:2
输入另外一个整数:1
----------------------------------------
2/1= 2
输入合法
程序结束

发生异常时:

输入一个整数:2
输入另外一个整数:0
----------------------------------------
输入非法,ZeroDivisionError
程序结束

总结

else子句的触发条件:

  • 在判断语句中,当if语句条件不满足时会就执行else子句的代码
  • 在循环语句中,当循环体没有执行或者循环体里执行了break语句
  • 在异常处理中,当没有发生异常时会执行else子句

以上就是Python中else的三种用法的详细内容,更多关于Python else用法的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
scrapy自定义pipeline类实现将采集数据保存到mongodb的方法
Apr 16 Python
Python中tell()方法的使用详解
May 24 Python
Python读取Excel的方法实例分析
Jul 11 Python
python如何通过protobuf实现rpc
Mar 06 Python
Win10下Python环境搭建与配置教程
Nov 18 Python
Python探索之pLSA实现代码
Oct 25 Python
Python变量赋值的秘密分享
Apr 03 Python
Python 实现选择排序的算法步骤
Apr 22 Python
Python实现正整数分解质因数操作示例
Aug 01 Python
Python字符串逆序的实现方法【一题多解】
Feb 18 Python
Python爬虫之Selenium设置元素等待的方法
Dec 04 Python
Python OpenCV快速入门教程
Apr 17 Python
Python基础之条件语句详解
教你怎么用Python实现GIF动图的提取及合成
如何理解python接口自动化之logging日志模块
Jun 15 #Python
python基于turtle绘制几何图形
详解Flask开发技巧之异常处理
Jun 15 #Python
Python Pandas常用函数方法总结
Jun 15 #Python
深入理解python协程
Jun 15 #Python
You might like
如何在PHP中进行身份认证
2006/10/09 PHP
PHP中mb_convert_encoding与iconv函数的深入解析
2013/06/21 PHP
jQuery中的RadioButton,input,CheckBox取值赋值实现代码
2014/02/18 PHP
php curl发送请求实例方法
2019/08/01 PHP
javascript编程起步(第二课)
2007/01/10 Javascript
javascript天然的迭代器
2010/10/29 Javascript
js实现翻页后保持checkbox选中状态的实现方法
2012/11/03 Javascript
jquery中邮箱地址 URL网站地址正则验证实例代码
2013/09/15 Javascript
对于jQuery性能的一些优化建议
2015/08/13 Javascript
Javascript中关于Array.filter()的妙用详解
2016/12/04 Javascript
jQuery使用DataTable实现删除数据后重新加载功能
2017/02/27 Javascript
Bootstrap栅格系统简单实现代码
2017/03/06 Javascript
vue 2.0封装model组件的方法
2017/08/03 Javascript
基于Node.js实现压缩和解压缩的方法
2018/02/13 Javascript
解决Vue中使用keepAlive不缓存问题
2020/08/04 Javascript
JS实现按比例缩小图片宽高
2020/08/24 Javascript
Flask框架的学习指南之制作简单blog系统
2016/11/20 Python
详解使用pymysql在python中对mysql的增删改查操作(综合)
2017/01/18 Python
Python sqlite3事务处理方法实例分析
2017/06/19 Python
Python3安装Scrapy的方法步骤
2017/11/23 Python
Python使用wxPython实现计算器
2018/01/30 Python
Python 中导入csv数据的三种方法
2018/11/01 Python
python运行时强制刷新缓冲区的方法
2019/01/14 Python
Python分布式进程中你会遇到的问题解析
2019/05/28 Python
解决python 执行shell命令无法获取返回值的问题
2020/12/05 Python
英国在线自行车商店:Evans Cycles
2016/09/26 全球购物
销售工作岗位职责
2013/12/24 职场文书
浙大毕业生自荐信
2014/01/26 职场文书
税务会计岗位职责
2014/02/18 职场文书
2014年新生军训方案
2014/05/01 职场文书
2014年高三班主任工作总结
2014/12/05 职场文书
MySQL学习总结-基础架构概述
2021/04/05 MySQL
CSS中em的正确打开方式详解
2021/04/08 HTML / CSS
python基于tkinter制作下班倒计时工具
2021/04/28 Python
Mysql排序的特性详情
2021/11/01 MySQL
蓝牙耳机怎么连接电脑win11? Win11蓝牙耳机连接电脑的技巧
2023/01/09 数码科技