请问您能解释为什么当出现异常时,以下函数会返回“1”吗?返回“1”的目的是什么?
def initialize():
"""
Starting point for the program.
"""
try:
go = Car()
print "Instance of Car created"
except KeyboardInterrupt:
return 1
答案 0 :(得分:4)
在C中,如果出现错误,返回非零值是一种相当常见的习惯用法。
我的预感是,创建此函数的人习惯于使用C编程并且不熟悉异常处理。没有更大的代码示例是不可能的,但是如果我是对的,那么在这个函数返回1或非零值的情况下调用此函数时可能存在某种错误处理。
如果是这种情况,使用异常的更合适的方法是使用raise
向上传递异常以处理其他地方,或者在函数中处理异常。
答案 1 :(得分:0)
在我看来,没有必要这样做,只有当Car()构造函数花费太长时间并且你想在initialize()
返回时处理它。