python:有没有isError函数?

1 投票
4 回答
26356 浏览
提问于 2025-04-16 02:06

有没有一个函数可以判断如果some_function出错的话,它会返回true

4 个回答

2

在Python中,你可以通过异常来进行错误检查:

try:
    some_function()
except Exception:
    print "error"

你需要定义一个叫做some_function()的函数,如果发生错误,就要用raise Exception来抛出一个异常。

4

不,Python用异常来处理错误,这些错误是通过try...catch块来捕获的。

换句话说,你对错误的定义是什么?是False? Null? 还是""?

补充:

为了回答你评论中的问题,其实没有一种明确的方法来比较,比如说"1.1""1.2"。这是故意的,因为字符串没有明显的排序方式。实际上,Python确实支持比较字符串,但它使用的是字典序(按字母顺序),这并不是你想要的。因为这些字符串实际上是语义上float类型——它们代表的是数字。真正的问题是,它们一开始就不应该是字符串(因为它们是数字!),但有时候你无法修复这个问题。所以,最好的办法是把它们转换成数字:

float(1.1) > float(1.2)
2

有时候你可能想要判断一个对象是不是一个异常,比如当你从一个类似celery的进程中获取任务结果时。你可以用下面的方式来检查:

isinstance(x, Exception)

撰写回答