python主动抛出异常raise
2023-12-21 01:50:09
1 python主动抛出异常raise
如果程序执行不符合业务规则,此时程序应该主动抛出异常。
python主动抛出异常用raise语句。
1.1 raise用法
raise [异常名称 [(异常描述)]]
1.2 描述
NO | 用法 | 描述 |
---|---|---|
1 | raise | 默认引发RuntimeError |
2 | raise 异常名称 | 引发指定名称的异常 |
3 | raise 异常名称(异常描述) | 引发指定异常并附带描述 |
1.3 raise默认抛出RuntimeError
示例
>>> raise
Traceback (most recent call last):
File "<pyshell#29>", line 1, in <module>
raise
RuntimeError: No active exception to reraise
1.4 raise抛出指定异常
示例
>>> raise IndexError
Traceback (most recent call last):
File "<pyshell#34>", line 1, in <module>
raise IndexError
IndexError
1.5 raise抛出带描述的指定异常
示例
>>> raise IndexError('string index out of range')
Traceback (most recent call last):
File "<pyshell#37>", line 1, in <module>
raise IndexError('string index out of range')
IndexError: string index out of range
1.6 raise主动抛出异常
示例
>>> def testraise():
try:
s=input('请输入一个字母:')
#判断输入的是否为字母
if(not s.isalpha()):
raise ValueError('必须输入字母')
except ValueError as e:
print('输入错误:',repr(e))
>>> testraise()
请输入一个字母:6
输入错误: ValueError('必须输入字母')
1.7 raise抛出上下文捕获的异常
示例
>>> def raisenoargs():
try:
s=input('请输入一个字母:')
if(not s.isalpha()):
raise ValueError('必须输入字母')
except ValueError as e:
print('输入错误:',repr(e))
# raise 不带参数,会将最近上文的错误再抛一次
raise
>>> raisenoargs()
请输入一个字母:6
输入错误: ValueError('必须输入字母')
Traceback (most recent call last):
File "<pyshell#53>", line 1, in <module>
raisenoargs()
File "<pyshell#52>", line 5, in raisenoargs
raise ValueError('必须输入字母')
ValueError: 必须输入字母
文章来源:https://blog.csdn.net/sinat_34735632/article/details/135119184
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!