Python中else的三种使用场景
判断语句
这是最常见的用法,当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 GUI库图形界面开发之PyQt5布局控件QHBoxLayout详细使用方法与实例
这篇文章主要介绍了python GUI库图形界面开发之PyQt5布局控件QHBoxLayout详细使用方法与实例,需要的朋友可以参考下2020-03-03pytest解读fixtures中yield与addfinalizer区别
这篇文章主要为大家介绍了pytest官方解读fixtures中yield与addfinalizer区别,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪2022-06-06python sklearn包——混淆矩阵、分类报告等自动生成方式
今天小编就为大家分享一篇python sklearn包——混淆矩阵、分类报告等自动生成方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2020-02-02selenium+unittest实现web自动化的示例代码
本文主要介绍了selenium+unittest实现web自动化的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2023-03-03
最新评论