본문으로 건너뛰기
실습하기

CSV 파일 파싱

CSV(Comma-Separated Values) 파일은 스프레드시트와 같은 표 형식 데이터를 저장할 때 자주 사용됩니다.

파이썬의 내장 csv 모듈을 사용하면 CSV 파일을 쉽게 읽고 쓸 수 있습니다.

참고: 파이썬 연습 환경에서는 로컬 컴퓨터에서 파일을 가져오는 기능을 지원하지 않습니다. 이 섹션의 코드 예시는 참고용입니다.


1. CSV 파일 읽기

csv.reader()를 사용해 CSV 파일의 각 행에 접근합니다.

CSV 파일 읽기
import csv

with open("people.csv", newline="") as file:
reader = csv.reader(file)
for row in reader:
print(row)
  • 각 행은 쉼표로 구분된 값들의 리스트입니다.
  • newline=""를 사용하면 Windows에서 발생할 수 있는 불필요한 빈 줄 문제를 피할 수 있습니다.

2. CSV 파일 쓰기

csv.writer()를 사용해 CSV 파일에 행을 생성하고 기록합니다.

CSV 파일 쓰기
import csv

with open("new_people.csv", "w", newline="") as file:
writer = csv.writer(file)
writer.writerow(["이름", "나이"])
writer.writerow(["지민", 28])
writer.writerow(["민수", 34])
  • writerow()는 리스트 한 개를 파일의 한 행으로 기록합니다.
  • 보통 첫 번째 행에는 헤더가 들어갑니다.

3. 딕셔너리로 읽기

csv.DictReader()는 각 행을 딕셔너리로 읽습니다. csv.DictReader()를 사용하면 이름 있는 열을 다루기 쉽습니다.

딕셔너리로 읽기
import csv

with open("people.csv", newline="") as file:
reader = csv.DictReader(file)
for row in reader:
print(row["이름"], "의 나이는", row["나이"], "살입니다.")
  • "이름""나이" 같은 헤더 이름으로 열에 접근할 수 있습니다.

요약

FunctionDescription
csv.reader()CSV 행을 리스트로 읽음
csv.writer()CSV 파일에 행을 기록
csv.DictReader()행을 딕셔너리로 읽음

다음 내용이 궁금하다면?

코드프렌즈 PLUS 멤버십 가입 or 강의를 등록해 주세요!