龙空技术网

Python:面对不按套路出牌的用户,要用try、except、else组合拳

骑猪的小猴子 163

前言:

现时咱们对“python3try语句”可能比较关怀,我们都想要分析一些“python3try语句”的相关内容。那么小编在网摘上汇集了一些关于“python3try语句””的相关文章,希望咱们能喜欢,咱们快快来了解一下吧!

本篇概要:业余码农学Python-18,本篇重点总结保留字try、except、else、finally的使用,通过4个保留字的组合使用,进行程序异常的捕捉与处理。

一、不按套路出牌的用户

前面我尝试编写了一些Pyhon实例,今天突然心血来潮,翻出之前的实例,来了一次突(zuo)破( si)的尝试——程序运行后,不按照要求输入,如:

“请输入带有符号的温度【摄氏度用C,华氏温度用F】:”我输入了80A;“请输入金额【以”RMB”或”USD”结尾】:”我输入2000元;“请输入数字:”我输入汉字;“请输入整数”我输入字母……

结果,悲剧了!

所有之前我写的代码都哭了:“你是个坏人,我要罢工、不跟你玩了。”

面对不按套路出牌的用户,咋办?

Python提供了一套组合拳,那就是保留字try、except、else、finally组合。

二、运用Python保留字try、except、else、finally,捕捉程序异常1、异常捕捉与处理的基本套路(try + except组合)

#异常捕捉与处理的基本套路

try:

<语句块1>

except <异常类型>: #异常类型可以缺省,即任意一种异常出现均执行语句块2

<语句块2>

我们举个实例:

#计算输入数字的2倍值

n = eval(input("请输入一个数字:"))

m=n*2

print(m)

当我们输入数字时,程序是可以正常运行,并输出用户所输入数字的2倍的值.

但当我们输入的不是数字时,比如我们输入字母a,程序则会报错。

下面我们加入try + except 组合,捕捉输入数据的异常并给用户一个提示。

#异常捕捉与处理的基本套路

try:

n = eval(input("请输入一个数字:"))

m=n*2

print(m)

except:

print("你输入的不是一个数字")

再次输入一个非数字的值a,则程序输出提示“你输入的不是一个数字”。

2、异常捕捉与处理的组合拳(try、except、else及finally组合)

用法如下

#异常捕捉处理组合拳

try:

<语句块1>

except:

<语句块2> #出现异常执行语句块2

else:

<语句块3> #只有在不发生异常的时候才执行语句块3

finally:

<语句块4> #无论是否出现异常,语句块4都会执行

程序则会按照以下规则执行:

继续优化前面的实例

#异常捕捉与处理组合拳

try:

n = eval(input("请输入一个数字:"))

m=n*2

except:

print("你输入的不是一个数字")

else:

print("{}的2倍为{}".format(n,m))

finally:

print("异常捕捉处理组合拳结束")

运行结果完美达到预期。

输入数字20,程序运行结果显示:

输入非数字a,程序运行结果显示:

因为初学,以上仅是异常捕捉与处理的基本使用及实例。更加深入的研究及使用,还要待后面的努力学习。

【end】

标签: #python3try语句 #python中try的用法