[파이썬] 파일 열기(open)와 닫기(close)

파일을 열고 닫는 것은 파이썬 프로그래밍에서 매우 중요한 작업입니다. 파일을 열어 데이터를 읽거나 쓸 수 있고, 작업이 끝나면 파일을 닫아 메모리를 해제해야 합니다. 이번 포스트에서는 open 함수를 사용해 파일을 열고, close 메서드를 사용해 파일을 안전하게 닫는 방법을 알아보겠습니다.

파일 열기 (Open a file)

open 함수는 파일을 열 때 사용되며, 다양한 매개변수를 받을 수 있습니다. 기본적으로는 파일 경로와 모드(mode)를 지정해야 합니다. 모드는 파일에 수행할 작업을 지정하며, “r”은 읽기, “w”는 쓰기, “a”는 추가입니다.

file = open("file.txt", "r")

위의 예제는 “file.txt” 파일을 읽기 모드로 엽니다. 파일이 존재하지 않으면 FileNotFoundError가 발생할 수 있으니 주의해야 합니다. 열고자 하는 파일이 다른 디렉토리에 있다면 파일 경로를 제대로 지정해야 합니다.

파일 닫기 (Close a file)

파일 작업이 끝나면 close 메서드를 사용해 파일을 닫아야 합니다. 이는 파일과 관련된 리소스를 해제하고 메모리를 정리하는 역할을 합니다. 파일을 닫지 않으면 메모리가 낭비되고, 다른 프로세스에 대한 접근도 제한될 수 있습니다.

file.close()

파일을 닫은 후에는 파일 변수를 사용할 수 없습니다. 따라서 파일을 다시 사용하려면 다시 열어야 합니다.

with 문을 사용하여 파일 자동 닫기 (Auto-closing files with with statement)

with 문은 파일을 열 때 자동으로 닫혀서 안전하게 리소스를 해제하는 방법을 제공합니다. with 문은 블록 내에서 작업이 끝나면 파일을 자동으로 닫아줍니다. 이는 예외가 발생하더라도 파일을 닫고 예외를 처리하는 기능을 가지고 있습니다.

with open("file.txt", "r") as file:
    # 파일 작업 수행

위의 예제는 “file.txt” 파일을 읽기 모드로 열고, 파일 작업이 끝나면 자동으로 파일을 닫습니다.

파일 열기와 닫기는 파일 작업을 안전하게 수행하는 데 매우 중요한 역할을 합니다. 올바르게 파일을 열고 닫는 것을 기억하면 메모리 누수를 방지하고 데이터를 안전하게 읽고 쓸 수 있습니다.