▶️15분
with 문의 비밀: __enter__와 __exit__
파일 닫는 걸 또 깜빡했다 - 컨텍스트 매니저
with 문의 비밀: __enter__와 __exit__
Python 고급: 제너레이터, 데코레이터, 컨텍스트 매니저, Type Hints > 파일 닫는 걸 또 깜빡했다 - 컨텍스트 매니저
학습 목표
__enter__와 __exit__ 메서드를 이해한다 with 문의 실행 순서를 파악한다 __exit__의 예외 처리 메커니즘을 안다

YouTube에서 보기
컨텍스트 매니저 프로토콜
with 문을 지원하려면 두 가지 매직 메서드가 필요합니다.
기본 구조
에디터 로딩 중...
with 문의 실행 흐름
에디터 로딩 중...
__exit__의 예외 처리
에디터 로딩 중...
핵심 인사이트
"컨텍스트 매니저는 리소스의 생명주기를 관리합니다. 획득(enter)과 해제(exit)를 자동화!"
핵심 포인트
- • __enter__: 리소스 획득, 반환값이 as 변수
- • __exit__: 리소스 해제, 예외 발생해도 항상 호출
- • __exit__ 반환값: True=예외 억제, False=예외 전파
- • with 문 = 자동 리소스 관리