Python 텍스트 파일 줄 단위 읽기 기본 개념
Python에서 파일을 다룰 때 read() 함수를 사용하면 파일의 전체 내용을 한 번에 모두 읽어옵니다. 하지만 파일이 매우 큰 경우 메모리를 비효율적으로 사용할 수 있으므로, 상황에 맞는 읽기 방식을 선택하는 것이 중요합니다.
주요 파일 읽기 함수 비교
- read() – 파일의 전체 내용을 하나의 문자열로 한 번에 읽어옵니다.
- readline() – 파일을 한 번에 한 줄씩 순차적으로 읽어옵니다.
- readlines() – 파일의 모든 줄을 읽어 각 줄을 요소로 갖는 리스트로 반환합니다.
readline()으로 첫 번째 줄 읽기
파일의 첫 번째 줄만 읽고 싶다면 readline() 함수를 사용하면 됩니다. 아래 예제를 확인해 보세요.
f = open('my_file.txt', 'r+')
print(f.readline())
f.close()위 코드는 my_file.txt 파일을 열고 첫 번째 줄을 출력한 뒤 파일을 닫습니다. 'r+' 모드는 읽기와 쓰기를 모두 허용하며, 단순히 읽기만 할 경우에는 'r' 모드를 사용하는 것이 안전합니다.
with 문을 활용한 더 안전한 방법
파일을 열고 나서 반드시 닫아야 하는 번거로움을 피하려면 with 문을 사용하는 것이 좋습니다. 이 방법은 코드 블록이 끝나면 파일이 자동으로 닫히므로 리소스 누수를 방지할 수 있습니다.
with open('my_file.txt', 'r') as f:
print(f.readline())파일 전체를 한 줄씩 처리하기
파일의 모든 줄을 순회하며 처리해야 한다면 다음과 같이 작성할 수 있습니다.
with open('my_file.txt', 'r') as f:
for line in f:
print(line.strip())이처럼 Python은 다양한 파일 읽기 방식을 제공하므로, 파일 크기와 처리 목적에 따라 적절한 방법을 선택하면 됩니다.