Python引发自定义异常

2024-09-28 03:20:31 发布

您现在位置:Python中文网/ 问答频道 /正文

什么是引发异常并让用户知道它是从my斨u模块引发的,即使它是一个常见的python异常,如ValueError:

#my_module.exceptions.py
    class MyModuleError(Exception):
        pass

#my_module.do_something.py
    def do_something(*args):
        try:
           some logic here
        except Exception as e: 
           # i dont know in advance what kinds of exceptions
           # this code might throw 
           raise MyModuleError('An error ocurred %s' % (repr(e))

我想让用户知道这个异常是在我的模块中发现的,尽管它是一个普通的python异常。在

编辑1:对不起,我应该解释得更好: 即使我不知道上面的代码会引发什么样的异常,我还是希望用户知道这是由我的模块引起的错误。 这是最佳实践吗? 我应该如何处理自定义模块中的意外异常?在


Tags: 模块用户pymydefexceptionargspass

热门问题