PYTHON - with

김광일·2022년 1월 12일
0

PYTHON

목록 보기
2/13
post-thumbnail

항시 파일을 열고, 닫고, 수정하고 등의 행동을 수행할 때엔
완료 후 close()를 해주어야한다.

지금 공부 중인 나도코딩 활용편2 GUI 프로그래밍 중에 보면,

file = open("filename", "r", encoding="utf8")
txt.insert(END, file.read())
file.close()

여기에서 문제는 file에서 해당 파일을 찾지 못한다던가,
다른 에러가 발생하게 됐을 땐 close() 까지 도달하지 못하게 된다.

이럴 때 with 를 사용하면 에러와 상관 없이 마지막에 close를 실행시켜준다.
with는 __enter____exit__ 특수 메소드를 가진 객체에 사용 가능하고,
with 문의 형식은 아래와 같다.

with (expression) as (variable):
	(block)

이걸 현재 공부 중인 코드에 적용을 시키면

with open("filename", "r", encoding="utf8") as file:
	txt.insert(END, file.read())

이런 코드가 나오게 된다.

기능적인 부분을 빼고 보더라도 더 짧고 알아보기 쉽게 작성 가능하니
잊지 말아야겠다.

profile
부족함 없이 공부하자

0개의 댓글