函数的返回值由最后执行的 return 语句决定. 由于 finally 子句一定会执行, 所以 finally 子句中的 return 将始终是最后执行的语句
'''
1.try块中包含break、continue或者return语句的,在离开try块之前,finally中的语句也会被执行
2. 实际应用中,不推荐在finally中使用return返回
3. 由于finally无论如何都会被执行, 一般用来做一些资源释放操作
'''
def func():
try:
return 'normal'
finally:
return 'finally'
print(func()) # finally
本文探讨了在Python中,当函数的try块中有return语句时,finally子句中的return如何影响函数的返回值。文章指出,finally子句中的return会覆盖try块中的return,成为函数的实际返回值。此外,还提到了finally子句常用于资源释放操作,并建议避免在finally中使用return。
587

被折叠的 条评论
为什么被折叠?



