with一个对象,自动触发__enter__方法

class Foo(object):
    def __init__(self):
        pass

    def __enter__(self):
        print("__enter__")

    def __exit__(self, exc_type, exc_val, exc_tb):
        print("__exit__")


obj = Foo()
with obj:
    print("xxx")
# 结束的时候会自动触发 __exit__
    
# 结果
"""
__enter__
xxx
__exit__
"""

  

posted @ 2019-07-01 17:36  zack赵康  阅读(120)  评论(0编辑  收藏  举报