파이썬 with 관련 질문이 있습니다.
안녕하세요.
며칠 전 책을 구매하여 처음 파이썬 공부를 시작한 직장인입니다.
게시판에 올리는 첫 질문글이네요. 앞으로 많이 질문드릴 것 같아, 먼저 감사하다는 말씀을 전합니다.
4-3장의 파일 입출력 관련 질문입니다.
책을 따라가며, 다음과 같은 소스코드를 작성했습니다.
f = open('temp','w')
for i in range(1,11):
data = "%d line\n" %i
f.write(data)
f.close()
g = open('temp','a')
for i in range(11,21):
data = "%d line\n" %i
g.write(data)
f.close()
with open('temp','a') as h:
data = "auto close\n"
h.write(data)
저는 1~20 line이 먼저 출력된 이후, 마지막에 auto close라는 출력이 나올 것으로 기대했습니다.
그러나, 파일은 1~10line, auto close, 11~20line 순으로 출력되었습니다.
맨 마지막에 작성된 with 구문이 중간의 파일 제어보다 우선 실행된 이유는 무엇인가요? (with에 우선순위가 있는 것인지요?)
감사합니다. :)
Leki 님 541
M 2020년 11월 3일 4:30 오후