python自定义现有的内置异常

标签 python exception

例如在这段代码中,我希望我的脚本行为是这样的。

当运行到b=a[2],或者任何一行都会抛出一个异常,不管异常是什么。我希望脚本停止,并发出自定义的红色错误消息,例如:“LOL!!!”

如何实现?

try:
    a = [1,2]
    b = a[2]
except:
    raise something

最佳答案

try:
    a = [1,2]
    b = a[2]
except IndexError:
    raise Exception('LOL!')

这是有效的,因为 stament a[2] 抛出一个 IndexError。 a 中只有 2 个元素,a[2] 取第三个(从零开始计数)。

...好吧...

class YourCustomException(Exception):
    pass

try:
    a = [1,2]
    raise YourCustomException('LOL')
except YourCustomException:
    print('NOW WHAT?')

关于python自定义现有的内置异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24567364/

相关文章:

python - 使用 pandas 数据透视 reshape 两列数据

python - 删除两个顶点之间的边[igraph python]

java - 在 Java 中使用 do-while 循环进行异常处理

java - 是否有必要为每个错误创建用户定义的异常

java - 为什么 JSP 中的 Java 代码会生成错误?

python - 有没有更 pythonic 的方法来为一个类设置多个默认参数?

python - 根据最近距离找到最佳的唯一邻居对

python - Cron 作业无法运行从控制台完美运行的 bash 脚本(需要 xsession 的 shell python 脚本)

java - Spring MVC中的异常处理——异常描述

java - 如何从异常代码块中获取变量