• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    미해결

.close()를 하는 이유

21.03.06 22:53 작성 조회수 196

0

.close()를 왜 꼭 해야 되나요? 

굳이 그걸 붙이지 않아도 실행되는데 문제가 없는데 왜 해야되는지 궁금합니다.

답변 1

답변을 작성해보세요.

1

장주명님의 프로필

장주명

2021.03.08

대부분의 경우에서 파일을 닫지 않는 것은 다음과 같은 이유로 나쁜 생각입니다.

1. 그것은 당신의 프로그램을 가비지 컬렉터에 맡깁니다 . 이론상 파일 자동으로 닫히지만 닫히지 않을 수도 있습니다. Python 3과 Cpython은 일반적으로 가비지 수집에서 꽤 좋은 일을하지만 항상 그런 것은 아니며 다른 변형은 일반적으로 그것을 짜증나게합니다.

2. 프로그램 속도가 느려질 수 있습니다. 너무 많은 항목이 열려있어 RAM에서 더 많은 공간이 사용되면 성능에 영향을 미칩니다.

3. 대부분의 경우, 파이썬에있는 파일에 많은 변화 할 때까지 효력을하지 않습니다 후에 는 편집을 볼 수 없습니다, 스크립트 편집은 잎이 열 때문에 경우, 파일이 닫히고 파일을 읽습니다.

4. 이론적으로는 열 수있는 파일 수의 한계에 도달 할 수 있습니다.

5. Windows는 열린 파일을 잠금 상태로 취급하므로 AV 스캐너 또는 기타 Python 스크립트와 같은 합법적 인 것은 파일을 읽을 수 없습니다.

6. 엉성한 프로그래밍입니다

도움이 되었기를 바랍니다!

출처 : https://stackoverflow.com/questions/25070854/why-should-i-close-files-in-python