python:有没有isError函数?
有没有一个函数可以判断如果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)