Logo
내 게시판 만들기
파이썬

CSV 처리 자동화 — 표준 csv 모듈

다람쥐 | 2026.04.27 13:10:12
조회 16 | 추천 0

CSV는 「쉼표로 구분된 텍스트」 형식으로 엑셀·DB·로그에서 가장 흔한 데이터 교환 형식입니다.

파이썬 표준 csv 모듈만으로도 대부분 처리 가능하고, 대용량은 pandas가 더 빠릅니다.



읽기.

import csv.

with open("data.csv") as f: reader = csv.DictReader(f); for row in reader: print(row["name"]).

DictReader는 헤더를 키로 한 dict로 반환 — 가장 쓰기 편합니다.



쓰기.

with open("out.csv", "w", newline="", encoding="utf-8") as f: writer = csv.DictWriter(f, fieldnames=["name", "age"]); writer.writeheader(); writer.writerows(data).

newline=""이 핵심 — 안 적으면 윈도우에서 빈 줄.



한국어와 인코딩.

한국에서 다루는 CSV는 UTF-8과 EUC-KR(또는 CP949)이 섞여 있습니다.

인코딩 안 맞으면 UnicodeDecodeError.

encoding="utf-8" 또는 encoding="cp949"로 명시.

chardet 라이브러리로 자동 감지도 가능.



엑셀 호환 — UTF-8 BOM.

엑셀이 UTF-8 CSV를 한국어 깨지게 여는 경우, encoding="utf-8-sig"로 저장하면 BOM이 붙어서 엑셀이 자동으로 UTF-8로 인식.

사용자가 더블클릭으로 여는 파일은 이 옵션이 필수입니다.




한 줄 요약


csv 모듈은 DictReader/DictWriter가 가장 편합니다.

newline="" + 인코딩(utf-8/cp949) 명시가 핵심, 엑셀 호환 시 utf-8-sig로 BOM 부착.




더 알아볼 것


- pandas.read_csv vs csv 모듈

- CSV 표준 RFC 4180

- Excel 직접 처리 — openpyxl

공유하기
목록보기
번호 제목 글쓴이 작성일 조회 좋아요
161 햇살이 26/04/27 12 0
160 다람쥐 26/04/27 18 0
159 구름이 26/04/27 17 0
158 햇살이 26/04/27 14 0
157 멍뭉이 26/04/27 14 0
156 토순이 26/04/27 14 0
155 야옹이 26/04/27 14 0
154 별님이 26/04/27 13 0
153 다람쥐 26/04/27 17 0
152 구름이 26/04/27 19 0
151 구름이 26/04/27 15 0
150 곰돌이 26/04/27 17 0
149 야옹이 26/04/27 20 0
148 다람쥐 26/04/27 16 0
147 구름이 26/04/27 16 0
146 다람쥐 26/04/27 40 0
145 구름이 26/04/27 16 0
144 별님이 26/04/27 13 0
143 곰돌이 26/04/27 14 0
142 너구리 26/04/27 16 0
141 야옹이 26/04/27 14 0
140 너구리 26/04/27 17 0
139 멍뭉이 26/04/27 14 0
138 야옹이 26/04/27 15 0
137 별님이 26/04/27 12 0
136 야옹이 26/04/27 16 0
135 멍뭉이 26/04/27 13 0
134 햇살이 26/04/27 14 0
133 햇살이 26/04/27 12 0
132 토순이 26/04/27 15 0
신고하기

신고 사유를 선택해 주세요.