|
|
发表于 2016-1-8 19:21:37
|
显示全部楼层
区别就在于,有finally关键字的时候,Python遇到错误在向你甩出错误之前还会留一口气先执行完finally里面的语句,看看文档是怎么说的吧~ 
- >>> def divide(x, y):
- ... try:
- ... result = x / y
- ... except ZeroDivisionError:
- ... print("division by zero!")
- ... else:
- ... print("result is", result)
- ... finally:
- ... print("executing finally clause")
- ...
- >>> divide(2, 1)
- result is 2.0
- executing finally clause
- >>> divide(2, 0)
- division by zero!
- executing finally clause
- >>> divide("2", "1")
- executing finally clause
- Traceback (most recent call last):
- File "<stdin>", line 1, in ?
- File "<stdin>", line 3, in divide
- TypeError: unsupported operand type(s) for /: 'str' and 'str'
复制代码 |
评分
-
查看全部评分
|