파일 처리는 모든 프로그램이 다루는 기본 작업입니다.
파이썬은 「open + with」 조합으로 파일을 매우 안전하고 간결하게 다룰 수 있습니다.
기본 사용법: with open("data.txt", "r") as f: content = f.read().
open()으로 파일을 열고, with 문이 끝나면 자동으로 파일을 닫아 줍니다.
「자원 관리」가 자동이라 「닫는 것을 잊는」 실수를 막아 줍니다.
「모드」가 중요합니다.
"r" — 읽기(파일이 없으면 오류).
"w" — 쓰기(파일이 있으면 덮어쓰기).
"a" — 추가(끝에 덧붙이기).
"r+" — 읽고 쓰기.
한국어 파일은 인코딩을 명시하는 게 안전합니다.
open("data.txt", "r", encoding="utf-8").
읽기 메서드는 세 가지가 자주 쓰입니다.
f.read() — 파일 전체를 한 문자열로.
f.readline() — 한 줄씩.
for line in f: — 가장 흔한 패턴, 한 줄씩 자동 반복.
큰 파일을 다룰 때는 메모리 효율이 좋은 「for line in f:」가 권장됩니다.
쓰기는 단순합니다.
with open("out.txt", "w", encoding="utf-8") as f: f.write("안녕\n").
여러 줄 쓰려면 f.writelines(["a\n", "b\n", "c\n"]) 또는 print("a", file=f)도 가능합니다.
줄바꿈은 자동이 아니므로 \n을 직접 넣어야 합니다.
한 줄 요약
파일 처리는 with open() as f: 패턴이 표준이며, 자동으로 파일을 닫아 줍니다.
모드(r/w/a)와 인코딩(utf-8)을 명시하는 게 안전합니다.
더 알아볼 것
- pathlib — 더 객체지향적 파일 경로
- binary 모드 — 이미지·동영상 파일
- csv·json 모듈로 구조화된 파일