강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

startup-junior-dev님의 프로필 이미지
startup-junior-dev

작성한 질문수

모두를 위한 파이썬 : 필수 문법 배우기 Feat. 오픈소스 패키지 배포 (Inflearn Original)

Context Manager(1)

open 함수의 한 ContextManager는 다른 방식으로 구현되어 있나요?

작성

·

331

0

with open 처럼 사용하기 위한 ContextManager를 만들 때 던더enter, 던더 exit를 구현해야한다고 하셨습니다.

open 함수는 TextIOWrapper Class 를 반환합니다.

TextIOWrapper 클래스는 던더 enter 만 제공되어 있고, 던더 exit 는 제공하지 않고 있습니다.

혹시 이 open 함수의 컨텍스트 관리자는 다른 방식으로 구현되어 있나요?

답변 1

0

좋은사람님의 프로필 이미지
좋은사람
지식공유자

https://sangeeta.io/posts/python-context-managers/

위 링크에서 중간부분 보시면

__exit__ 메소드는 반드시 가져야 됩니다.

상속관계를 살펴보시면 __exit__ 호출 되거나, 직접 구현해서 사용하실 수 있습니다.

답변 감사합니다. 링크에서 dir로 메소드 찾아내네요. 다음부터는 dir 찍어보는 습관을 지닐께요 감사합니다.

startup-junior-dev님의 프로필 이미지
startup-junior-dev

작성한 질문수

질문하기