python中withas的用法(python with语句的工作原理)
导读:1、说明...
1 、说明
(1)上下文管理器对象必须有内置操作符__enter__和__exit__方法 。
(2)在with句子中返回对象管理器并分配变量时 ,将召回__enter__方法 。
(3)执行嵌套句 ,即上述相关代码 。
(4)如果出现异常信息 ,将回调__exit__的方法 ,同时携带type,value,traceback三个参数(通过sys.exc_info获得)
(5)在正常执行完成后 ,还召回__exit__的方法 。
2 、实例
#exception.pyclassWithContextObject: defmessage(self,args): print(args)def__enter__(self): print("executeentermethod..")returnselfdef__exit__(self,exc_type,exc_val,exc_tb): ifexc_typeisNone: print("executenormally...")else: print("raiseexception...")returnFalsedeftest_with(): withWithContextObject()ascontext: context.message("takemessage")if__name__==__main__: test_with()>>>pythonexception.py以上就是python with语句的工作原理 ,希望对大家有所帮助 。更多Python学习指路:Python基础教程
创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!