在 with 声明的代码段中,我们可以做一些对象的开始操作和退出操作,还能对异常进行处理。这需要实现两个魔术方法: __enter__ 和 __exit__。
1、定义了当使用 with 语句的时候,会话管理器在块被初始创建时要产生的行为。请注意, __enter__ 的返回值与 with 语句的目标或者 as 后的名字绑定。
__exit__(self, exception_type, exception_value, traceback):
2、定义了当一个代码块被执行或者终止后,会话管理器应该做什么。它可以被用来处理异常、执行清理工作或做一些代码块执行完毕之后的日常工作。如果代码块执行成功,exception_type,exception_value,和traceback 将会为 None 。否则,你可以选择处理这个异常或者是直接交给用户处理。如果你想处理这个异常的话,请 确保__exit__ 在所有语句结束之后返回 True。如果你想让异常被会话管理器处理的话,那么就让其产生该异常。
以上就是python中__enter__和__exit__的应用场景,希望对大家有所帮助。 更多Python学习指路: python基础教程
本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。
查看更多关于python中__enter__和__exit__的应用场景的详细内容...
声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://www.haodehen.cn/did248811