欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程语言 > python >内容正文

python

Python “with” keyword

发布时间:2025/7/25 python 41 豆豆
生活随笔 收集整理的这篇文章主要介绍了 Python “with” keyword 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

with 关键字的意思就是一种try finally的快捷写法

看下面的代码和注释就容易理解

with WithWrapper() as ww:
print ww # 应该打印 1. 它是WithWrapper().__enter__函数的返回值
print "with body"
raise NameError("Error Raised") # 这里如果有异常, WithWrapper().__exit__函数的后三个参数就根据这个异常被赋值。否则三个参数的值都是None class WithWrapper:
def __enter__(self):
print "with语句执行后,__enter__先执行"
return 1 # 返回的值被赋给with语句中as后的变量,你想返回什么就返回什么
def __exit__(self, exc_type, exc_value, traceback):
print "with语句执行后,__exit__一定会被执行,即使在with body里面抛出了异常"
return True # 返回True表示with body抛出的异常本地处理了,异常不会被propagated。否则异常会被with语句后面的代码捕捉到。


可参考

http://pyref.infogami.com/__exit__

转载于:https://www.cnblogs.com/dbbs/archive/2012/03/01/2374923.html

总结

以上是生活随笔为你收集整理的Python “with” keyword的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。