Python—异常处理

try-except 语句

def div_apple(n):
    print("%d个苹果你想要分给几个人" % n)
    s = input("请输入人数...")         # 此处可能会引起valueError类型的错误
    cnt = int(s)  
    result = n/cnt
    print("每人分了", str(result), "个苹果", sep='')
    print("每人分了"+ str(result) +"个苹果")
    print("每人分了%d个苹果" % result)
    print("每人分了{0}个苹果".format(result))
	
try:
    div_apple(10)
except ValueError as v:
    print("发生了值错误,已转为正常状态{0}".format(v))
except ZeroDivisionError as z:
    print("发生了零除错误,苹果收回办公室{0}".format(z))
except (ValueError,ZeroDivisionError):
    print("发生了错误,收回吧")
except:                               # 不加类型,通吃,全部在这里处理
    print("发生了除了值以外的错误,在此处处理")
else:
    print("没有发生错误,苹果分完了")    # 此子句内的语句只在没有发生异常时才会执行
finally:
    print("我一定会执行的!!!")         # 此子句内的语句无论是否发生异常都会执行
print("程序正常退出")

try-except语句语法说明:

  • as子句是用于绑定错误对象的变量,可以省略。
  • except子句可以有一个或多个,但至少要有一个。
  • else子句最多只能有一个,也可以省略。
  • finally子句最多只能有一个,也可以省略。

try-finally 语句

https://www.runoob.com/python/python-exceptions.html

https://www.cnblogs.com/beile/p/10789333.html

https://www.cnblogs.com/yuanrenxue/p/10670124.html

https://blog.csdn.net/sinat_38682860/article/details/96627791

断言:assert

https://www.cnblogs.com/tfzz/p/11322482.html

posted @ 2019-10-23 16:24  刘_love_田  阅读(266)  评论(0编辑  收藏  举报