assertpythonraise_python raise和assert的区别

python中raise和assert的区别

一、使用raise抛出异常

python可以自动触发异常,raise(内置函数)的定义为显示的抛出异常,用户可以使用raise进行判断,显式的引发异常,raise执行后程序将不再向下执行。

式例:

#!/usr/bin/env python

# -*- coding:utf-8 -*-

__author__ = ‘40kuai‘

books_dict = {‘name‘:‘python‘,‘pages‘:390}

key = input(‘查看属性:‘)

if key in books_dict:

print(books_dict[key])

else:

raise KeyError

# 当要查询的属性不在字典中时会触发异常

raise也可以用户创建自定义的异常

#!/usr/bin/env python

# -*- coding:utf-8 -*-

__author__ = ‘40kuai‘

class helei(Exception): # 继承 Exception

def __init__(self, msg):

self.message = msg

def __str__(self): # 被print调用时执行,可以不写

return self.message

if __name__ == ‘__main__‘:

try:

raise helei(‘我的异常‘) # 触发异常

except helei as e:

print(e)

二、assert使用

assert语句用于检测某个条件表达式是否为真。assert语句又称为断言语句,即assert认为检测的表达式永远为真。

断言用来指定某一操作必须为真。也可以在脚本执行时加上python -O参数来跳过assert检测。

可以使用assert False来显示代码编写未完成

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值