鱼C论坛

 找回密码
 立即注册
查看: 1502|回复: 11

[技术交流] 只要我跑得够快,异常就追不上我~

[复制链接]
发表于 2020-3-25 14:45:27 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 永恒的蓝色梦想 于 2020-3-28 13:24 编辑

我们都知道,在 try finally 的结构里,不管 try 里面发生什么,finally 一定会执行。

同时我们也知道,finally 无法阻止异常发生。

所以,下面这个例子会发生什么呢?
def func():
        try:
                raise BaseException
        finally:
                return '有异常'

让我们来运行一下~

结果
>>> def func():
        try:
                raise BaseException
        finally:
                return '有异常'

        
>>> func()
'有异常'
惊奇的发现,BaseException 竟然不见了!

原来我们在 BaseException 被引发之前就从函数里跑出去了,只留下 BaseException 在风中凌乱……

同理,以下几个例子也不会发生异常
>>> for i in range(3):
        try:
                print(i**2)
                iter(i)
        finally:
                continue

        
0
1
4
>>> 
>>> while 1:
        try:
                int([])
        finally:
                print('溜了溜了')
                break

        
溜了溜了
>>> 

如果对这个现象感到不解的童鞋,可以去看一下 一个账号 的这篇帖子:传送门  

如果有收获,别忘了评分


                               
登录/注册后可看大图

评分

参与人数 2荣誉 +8 鱼币 +8 贡献 +8 收起 理由
zltzlt + 3 + 3 + 3 鱼C有你更精彩^_^
qiuyouzhi + 5 + 5 + 5 Wow,还有这种用法

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2020-3-25 15:02:44 | 显示全部楼层
自占二楼
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-25 15:05:04 | 显示全部楼层
真是个奇葩的把异常甩掉的方法
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-25 15:16:27 | 显示全部楼层
哈哈哈哈哈真够皮的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-25 15:20:17 | 显示全部楼层
刚才咩事都没有发生
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-3-25 15:26:10 | 显示全部楼层
qiuyouzhi 发表于 2020-3-25 15:20
刚才咩事都没有发生

是的,本来你不说谁都不知道的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-25 15:29:39 | 显示全部楼层
永恒的蓝色梦想 发表于 2020-3-25 15:26
是的,本来你不说谁都不知道的

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-28 12:50:16 | 显示全部楼层
如果有收获,别忘了评分


                               
登录/注册后可看大图

如果有收获,别忘了[u][b]评分[/b][/u]

[img]http://xxx.fishc.com/forum/201709/19/094516hku92k2g4kefz8ms.gif[/img]



想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-3-28 13:24:43 | 显示全部楼层
一个账号 发表于 2020-3-28 12:50
如果有收获,别忘了评分 :

谢啦

                               
登录/注册后可看大图
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-28 13:25:26 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-3-28 13:42:11 | 显示全部楼层

谢谢提供代码,已经用上了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-28 18:18:11 | 显示全部楼层
学习
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-25 05:09

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表