with

  • 해당 코드를 벗어날 때 자동으로 close 함수를 호출

사용법

as 와 같이 사용

1
2
with open('text.txt') as f:
	f.readlines()

동작 방법

  1. __init__ 호출
  2. with 문에 진입할 때 객체의 __enter__ 호출
  3. __exit__ 호출
1
2
3
4
5
6
7
8
9
10
11
12
13
class Test:
    def __init__(self):
        print('init')
        
    def __enter__(self):
        print('enter')
        
    def __exit__(self,exc_type,exc_val,exc_tb):
        print('exit')
        
with Test() as f:
    print('with 문 실행중')
      

결과

1
2
3
4
init
enter
with 문 실행중
exit

카테고리:

업데이트: