用错误码来表示是否出错十分不便,因为函数本身应该返回的正常结果和错误码混在一起,造成调用者必须用大量的代码来判断是否出错:
1
2
3
4
5
6
7
8
9
10
11
12
13
|
def foo():
r = some_function()
if r = = ( - 1 ):
return ( - 1 )
# do something
return r
def bar():
r = foo()
if r = = ( - 1 ):
print 'Error'
else :
pass
|
但是Go就是这么干的,哈哈!
python 中还是用try … except….finally这种方式来处理的。
1
2
3
4
5
6
7
8
9
|
try :
print 'try...'
r = 10 / 0
print 'result:' , r
except ZeroDivisionError, e:
print 'except:' , e
finally :
print 'finally...'
print 'END'
|