提出例外而不打印

时间:2014-01-29 01:36:49

标签: exception python-3.x

有没有办法在不打印或返回任何内容的情况下引发手动创建的异常?通过是否足够还是有另一种方式?

try:
    a = b
    raise user_error:
except user_error:
    pass

1 个答案:

答案 0 :(得分:0)

所有异常都来自Exceptions(),因此您可以创建自己的异常类,然后随意将其提升。如果您的异常未在try-except块中捕获,则将打印该异常。以下是如何创建自己的异常,引发它并捕获它:

    class MyException(Exception):
        def __str__(self):
            print("Hello!")

    try:
        raise MyException
    except MyException:
        print("Found my own exception! :)")