Python技术特点——三元运算解答

三元运算
使用三元运算可以简洁明了,配合列表与字典的生成式,此时一行搞定千言万语
谈谈异常处理

错误至少包括两种,一种是语法错误,另一种则是异常。

语法错误: 就是各种Error…
官方解释:https://docs.python.org/3/library/exceptions.html#bltin-exceptions

异常: try … except … finally… 来解决异常。
注意:except block 只接受与它相匹配的异常类型并执行,如果程序抛出的异常并不匹配,那么程序照样会终止并退出。
万能异常爸爸,Exception。Exception 是其他所有非系统异常的基类,能够匹配任意非系统异常
在 finally 中,通常会放一些无论如何都要执行的语句。

自定义异常:
raise 主动抛出异常。

异常应用场景:
大型社交网站的后台,需要针对用户发送的请求返回相应记录。用户记录往往储存在 key-value 结构的数据库中,每次有请求过来后,我们拿到用户的 ID,并用 ID 查询数据库中此人的记录,就能返回相应的结果。

而数据库返回的原始数据,往往是 json string 的形式,在 json.loads() 函数中,输入的字符串如果不符合其规范,那么便无法解码,就会抛出异常,因此需要加上异常处理。

注意: 正常的 flow-control 逻辑,不要使用异常处理,直接用条件语句解决就可以了。
一般来说异常抛出,都会对其进行Log(一般每1000次log一次),输出到real time的table和dashboard里,这样有利于之后的分析和改进。

except之后的delete操作:

“When an exception has been assigned using as target, it is cleared at the end of the except clause.”

在异常处理的 except block 中,把异常赋予了一个变量,那么这个变量会在 except block 执行结束时被删除

在平时写代码时,一定要保证 except 中异常赋予的变量,在之后的语句中不再被用到。

比如下面这个code block:
except E as N:
foo

就等于
except E as N:
try:
foo
finally:
del N

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值