当前位置: 首页 > news >正文

中国建设银行积分换购网站上线了建站

中国建设银行积分换购网站,上线了建站,网站在线聊天教程,重庆市两江新区建设管理局网站为什么要处理异常? 如果异常没有被合理的处理,就会导致程序不正常运行,与我们期待的结果不相符,例如下面这个例子(除数不能为0的案例) # 异常:如果不处理异常,程序就会提前终止 de…

为什么要处理异常?

如果异常没有被合理的处理,就会导致程序不正常运行,与我们期待的结果不相符,例如下面这个例子(除数不能为0的案例)

# 异常:如果不处理异常,程序就会提前终止
def division(x, y):return x / yprint(division(2,3))
print(division(2,0))
print(division(2,1))

执行结果
在这里插入图片描述

异常处理正确流程try-except - else - finally

python的关键字finally功能是和try配合使用,在try之后可以有except或者else,finally关键词必须放在except和else之后,不论是否有异常发生一定会执行finally当中的逻辑。
例如:一定除数不能为0的try-except-else的处理逻辑

# 异常:如果不处理异常,程序就会提前终止
def division(x, y):# 处理可能发生异常的代码try:v = x / yexcept ZeroDivisionError as e:print(e)return ("除数不能为0")else:return vprint(division(2,3))
print(division(2,0))
print(division(2,1))

执行结果如下
在这里插入图片描述
当然,实际代码中有N中可能出现的错误异常,因此在excepte中还可能回处理其他异常,例如数据类型错误,例如

print(division('s',1))

执行结果为typeError
在这里插入图片描述
所以可能也需要处理不止一个异常

# 异常:如果不处理异常,程序就会提前终止
def division(x, y):# 处理可能发生异常的代码try:v = x / yexcept ZeroDivisionError as e:print(e)return ("除数不能为0")except TypeError as e:print(e)return ("数据类型异常,需要整型")else:return vprint(division(2,0))
print(division('s',1))
print(division(2,1))

在这里插入图片描述
除了这种可以预料的处理,我们还需要兜底处理逻辑,来保证其他异常被处理掉,所以需要用baseException来多兜底

    except BaseException as e:print(e)return ("发生了异常")

除此之外,如果有数据库相关资源需要关闭,文件资源需要处理都可以在finally中进行处理,因为finally中逻辑无论是否发生异常都可以保证被执行

# 异常:如果不处理异常,程序就会提前终止
def division(x, y):# 处理可能发生异常的代码try:v = x / yexcept ZeroDivisionError as e:print(e)return ("除数不能为0")except TypeError as e:print(e)return ("数据类型异常,需要整型")# 兜底处理except BaseException as e:print(e)return ("发生了异常")else:return vfinally:# 数据库、线程池、文件等各种资源的释放,无论是否发生了异常,finally语句块都会在return之前被执行print( "finally语句块在返回之前被执行")print(division(2,0))
print(division('s',1))
print(division(2,1))

执行结果如下
在这里插入图片描述

自定义异常的抛出

举个例子:检测考试是否通过的异常,60分以上为通过

# 自定义异常
class scoreException(BaseException):# 构造方法def __init__(self, msg):super().__init__(msg)# 自定义函数
def checkScore(score):if score < 60:raise scoreException("Score is too low!")else:print("Score is ok!")# test方法
try:score = int(input("Enter a score number: "))checkScore(score)
except scoreException as e:print(e)print("continue other logic")

执行结果1
在这里插入图片描述
执行结果2
在这里插入图片描述

http://www.hkea.cn/news/782158/

相关文章:

  • 深圳网站建设外贸公司排名搜索热词排名
  • 网络科技公司招聘可靠吗seo多久可以学会
  • 企业网站建设的方案ppt网络营销的特点主要包括什么
  • 如何自行建设网站推广关键词优化
  • 建设学院网站百度收录关键词查询
  • 有关外贸的网站有哪些内容武汉抖音seo搜索
  • 娄底网站建设的话术深圳网站关键词排名优化
  • 福田大型商城网站建设seo营销方法
  • 网站开发专业就业指导企业网站设计与实现论文
  • 网络营销方式的思维导图seo关键词优化系统
  • wordpress访客ip记录福清市百度seo
  • 网站下载速度慢互联网广告推广公司
  • 电影网站空间配置网络营销的工具和方法有哪些
  • 包装设计网站免费百度seo搜索引擎优化厂家
  • 免费做公司网站sem对seo的影响有哪些
  • 网站空间购买费用关键词优化计划
  • 网站制作可以卖多少钱陕西网站建设制作
  • 深圳中小企业网站制作谷歌海外广告投放
  • 做游戏网站的需求分析创建app平台
  • 青岛胶南做网站的有多少seo商学院
  • 二月网站建设南宁百度个人中心登录
  • 如何在相关网站免费做宣传广告免费建立个人网站官网
  • 做搜狗网站优化首自己建立网站步骤
  • 企业资质查询官方网站最好的小说网站排名
  • 乐平网站设计北京互联网公司
  • 朝阳企业网站建设方案费用郑州网络营销学校
  • 建站行业发展百度广告代运营
  • 如何做积分商城网站鸡西seo顾问
  • p2p网站开发文档免费b站软件下载
  • 有没有做q版头像的网站今天百度数据