异常处理
05异常处理
笔记
- 相关的标准异常和标准警告总结
- 列举了异常处理程序,某种错误引发对应的异常时,异常处理程序将被启动,从而恢复程序的正常运行。
- 一个
try
能包含多个except
,最多仅一个分支执行,并且要规范排序,要从最具针对性的异常到最通用的异常。
except
子句可以处理多个多个异常,这些异常放在一个括号里成为一个元组。
- 若
except
后不带任何异常类型,则不能通过该程序识别出具体的异常信息。因为它捕获所有的异常。
finally
子句都会执行,若出现异常,没被except
子句截住,则异常会在finally
子句之后执行
else
,try
子句中执行没有异常时,执行else
后的语句。else
语句的存在以except
语句存在为前提
raise
语句抛出一个指定异常
练习
- 猜数字游戏
题目描述:
电脑产生一个零到100之间的随机数字,然后让用户来猜,如果用户猜的数字比这个数字大,提示太大,否则提示太小,当用户正好猜中电脑会提示,“恭喜你猜到了这个数是…”。在用户每次猜测之前程序会输出用户是第几次猜测,如果用户输入的根本不是一个数字,程序会告诉用户"输入无效"。
(尝试使用try catch异常处理结构对输入情况进行处理)
获取随机数采用random模块。
import random
shuzhi=random.randint(0,100)
cishu=0
while True:try:cishu =cishu+1print("这是您第"+str(cishu)+"次猜测")caice=input("请猜测一个数字:")guess=int(caice)if guess > shuzhi :print("太大")elif guess < shuzhi :print("太小")else :print("恭喜你猜到了这个数是"+str(guess))breakexcept ValueError as error:print("输入无效\n"+str(error))