Think Twice
IT技術メモ | Pythonのメモ
Created: 2022-02-02 / Updated: 2022-02-02

Pythonのコンテキストマネージャ


目次


概要

実装方法

Copy
class MyContextManager:
    def __enter__(self):
        print('1 ENTER!')
        return self

    def __exit__(self, exc_type, exc_value, traceback):
        print('4 EXIT!')

    def foo(self):
        print('3 FOO!')

# テストプログラム
with MyContextManager() as cm:
    print('2 ** hello **')
    cm.foo()
出力結果
Copy
1 ENTER!
2 ** hello **
3 FOO!
4 EXIT!

参考

参考サイト