Python handling exceptions edit

http://docs.python.org/tutorial/errors.html#handling-exceptions

def divide(x, y):
    r = 0
    while r < 3:
        try:
            result = x / y
        except ZeroDivisionError:
            print "division by zero!"
            r += 1
            continue
        else:
            print "result is", result
            return 'haha'
        finally:
            print "executing finally clause"
    return "end"

print divide(2, 3)

위의 예외 구문에서 예외가 발생하지 않을때 return을 한다.

문제는 과연 finally:~ 구문을 실행할까?

result is 0
executing finally clause
haha

return 이전에 finally 구문을 실행하고 return 된다.

0 comments:

Post a Comment

Newer -> <- Older