在Python中,如何在不引发另一个异常的情况下构造一个异常?

安东·丹尼科

请考虑以下代码段:

all_errors = []
for i in something:
    try:
        do_something_that_throws(i)
    except Exception as e
        # what I know I can do:
        raise MyCustomException(i) from e
        # what I actually want:
        # all_errors.append(MyCustomException(i) from e)

有没有一种方法可以使用from e对我有用的所有初始化(设置__cause__或其他设置构造MyCustomException ,但又不会抛出该初始化

本尼迪克特·P

AFAIK,除了__cause__手动设置没有其他方法

但是,由于您创建了自定义异常,因此这可能会有所帮助:

class MyCustomException(Exception):
    def __init__(self, cause=None)
        self.__cause__ = cause

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Android:如何在不引起用户注意的情况下从一个片段移动到另一个片段?

Python如何在不引用其原始实例的情况下使用另一个实例的属性来启动新实例?

我如何在 python tkinter 中不点击按钮的情况下进入另一个页面

在不引用内部结构的情况下访问另一个结构中的结构字段

Python:如何在不删除重复项的情况下将一个数据帧中的列值替换为另一个

如何在不重新运行函数(python)的情况下将值从一个脚本中的函数传输到另一个脚本?

在Python中,如何在不循环的情况下从另一个矩阵的值中分配一个稀疏矩阵的值?

一个人如何在不复制的情况下将过滤一个向量的结果存储在另一个向量中

Python:在except块中引发另一个异常以供以后捕获

如何从另一个类中捕获异常?

如何在不引发异常的情况下退出 python 2.7 中的 for 循环

如何在不写入Java中另一个文件的情况下删除文件的一行

如何在给定另一个数组的情况下创建一个 Matlab 数组

如何在一个哈希引用另一个哈希的情况下打印哈希的哈希

如何在不使用.setModal(True)的情况下使一个窗口阻止另一个窗口

如何在不复制的情况下将一个向量移动到另一个向量

Javascript - 如何在不修改另一个列表的情况下更改一个列表

如何在没有位置的情况下将一个div与另一个div重叠

如何在不挤压的情况下将视图与另一个视图对齐

如何在不放大fabricjs的情况下显示另一个画布

如何在不翻转的情况下显示Boxplot与另一个图的翻转?

如何在不包含另一个XML的情况下引用它?

如何在没有密码的情况下SSH另一个VM

如何在SwiftUI中在没有NavigationButton的情况下导航到NavigationView中的另一个视图?

如何在不按住原始程序的情况下运行另一个python程序?

如何在不按住原始程序的情况下运行另一个python程序?

如何在不锁定MYSQL 6.2中的表的情况下从另一个表复制数据?

如何在没有调用对象的情况下使用在另一个类中定义的方法?

如何在不签出的情况下获取另一个分支中的文件列表?