首页 新闻 会员 周边 捐助

以下Python代码执行后,会抛出异常吗?

0
[已关闭问题] 关闭于 2025-11-25 14:15
class MyContext:
    def __enter__(self):
        return self
    def __exit__(self, exc_type, exc_val, exc_tb):
        return True
with MyContext():
    raise ValueError("Error")
 
A
会抛出ValueError
B
不会抛出异常
C
会抛出AttributeError
D
会抛出TypeError
*Tesla*的主页 *Tesla* | 小虾三级 | 园豆:1152
提问于:2025-11-25 14:15
< >
分享
所有回答(1)
0
正确答案:B
官方解析:
在Python中,with语句的上下文管理器通过__exit__方法处理异常。当__exit__返回True时,with块内引发的异常会被压制而不传播。本代码中,__exit__返回True,因此with块内引发的ValueError被处理,不会抛出任何异常。选项B正确,
*Tesla* | 园豆:1152 (小虾三级) | 2025-11-25 14:15
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册