当前位置: 首页 > 面试题库 >

Python-关于捕获任何异常

芮安顺
2023-03-14
问题内容

我如何编写一个try/ except块来捕获所有异常?


问题答案:

你可以,但你可能不应该:

try:
    do_something()
except:
    print "Caught it!"

但是,这也会捕获类似的异常,KeyboardInterrupt而你通常不希望那样,对吗?除非你立即重新引发异常,否则请参阅docs中的以下示例:

try:
    f = open('myfile.txt')
    s = f.readline()
    i = int(s.strip())
except IOError as (errno, strerror):
    print "I/O error({0}): {1}".format(errno, strerror)
except ValueError:
    print "Could not convert data to an integer."
except:
    print "Unexpected error:", sys.exc_info()[0]
    raise


 类似资料:
  • 对于我的RESTAPI,我使用jersey和ExceptionMapper来捕获全局异常。我的应用程序抛出的所有异常都运行良好,但我无法捕获jackson抛出的异常。 例如,我的一个endpoint接受包含枚举的对象。如果请求中的Json有一个不在枚举jersey中的值,则抛出此异常 尽管我创造了这个映射器 代码永远不会到达这个映射器。 为了捕捉这些异常,我们需要做些什么吗? 编辑说明:我尝试过让

  • 本文向大家介绍如何在Clojurescript中捕获任何JavaScript异常?,包括了如何在Clojurescript中捕获任何JavaScript异常?的使用技巧和注意事项,需要的朋友参考一下 要在Clojurescript中捕获JavaScript异常,请尝试以下代码片段-

  • 我使用的是python 2.7和tornado 4.5 以下代码不起作用:除块不被触发。我不明白为什么? 相反,我可以捕获;但是我没有我如何调用的上下文。在我的例子中,更有意义的是引发一个较低级别的异常,并且调用者根据输入将其转换为人类可读的错误。 我是否只需要重构它来调用较低级别的gen.Task?那会很烦人:/

  • 问题内容: 我想捕获一个特定的ValueError,而不仅仅是任何ValueError。 我试过这样的事情: 但这会引发SyntaxError:无法分配给文字。 然后我尝试了: 但这引发了例外,即使这是我要避免的例外。 问题答案: 在,是例外,而不是字符串的实例。因此,当您测试不等于特定字符串时,该测试始终为False。尝试: 代替。 例: 通常,如果可以帮助您,您并不是真的希望依赖于错误消息-这

  • 我有一个骡子流,可以抛出异常(无法连接到连接器,组件抛出异常等)。当这种情况发生时,骡子流在异常发生的地方停止。我需要捕获流抛出的任何异常并发送电子邮件通知,指示发生了异常。(尤其是对于像从JMS读取一样异步运行的流)。我应该使用流中的什么元素来捕获任何异常并发送电子邮件? 我试过了: 但这根本就没有开始。我还尝试过: 但这似乎只在流抛出异常时才有效(正常的流功能被改变)。 @David Doss

  • 问题内容: 我正在尝试从Python内部进行比特币付款。在bash中,我通常会这样做: 因此,例如: 如果成功,我会得到一个交易ID作为输出,但是如果我尝试转账大于我的比特币余额的金额,则会得到以下输出: 现在,在我的Python程序中,我尝试按以下方式进行付款: 如果有足够的余额,则可以正常工作,但是如果没有足够的余额,则会输出以下内容: 它不包括我在命令行中得到的错误。所以我的问题是;如何从P