PYTHON

[중급 4편] 파일 처리 심화.zip

Kim.Sung 2025. 5. 11. 14:20
728x90

*CSV, JSON, 경로 확인까지 실무에 꼭 필요한 파일 처리 총정리*


파이썬 파일 입출력은 단순 텍스트 저장을 넘어서  
CSV, JSON 등 다양한 형식의 데이터를 다루는 데 매우 중요합니다.  
이번 편에서는 실제 현업에서 자주 쓰이는 파일 처리 심화 내용을 정리합니다.

━━━━━━━━━━━━━━━━━━━

📂 1. CSV 파일 읽고 쓰기

import csv

# CSV 쓰기  
with open("data.csv", "w", newline="") as f:  
  writer = csv.writer(f)  
  writer.writerow(["이름", "나이", "도시"])  
  writer.writerow(["지민", 25, "서울"])

# CSV 읽기  
with open("data.csv", "r") as f:  
  reader = csv.reader(f)  
  for row in reader:  
    print(row)

- newline=""을 넣어야 줄바꿈 문제 없음  
- 리스트 형태로 읽고 쓸 수 있음

━━━━━━━━━━━━━━━━━━━

📂 2. JSON 파일 저장 및 불러오기

import json

# 딕셔너리 → JSON 저장  
data = {"이름": "준호", "나이": 28}  
with open("user.json", "w", encoding="utf-8") as f:  
  json.dump(data, f, ensure_ascii=False, indent=2)

# JSON → 딕셔너리 불러오기  
with open("user.json", "r", encoding="utf-8") as f:  
  loaded = json.load(f)  
  print(loaded)

- ensure_ascii=False → 한글 깨짐 방지  
- indent=2 → 보기 좋게 정렬됨

━━━━━━━━━━━━━━━━━━━

📂 3. 파일 존재 여부 확인

import os

if os.path.exists("data.csv"):  
  print("파일이 존재합니다.")  
else:  
  print("파일이 없습니다.")

- os.path.exists() → 파일/폴더 유무 확인  
- 절대경로 또는 상대경로 모두 사용 가능

━━━━━━━━━━━━━━━━━━━

📂 4. 실전 예외처리 예시

try:  
  with open("없는파일.txt", "r") as f:  
    content = f.read()  
except FileNotFoundError:  
  print("파일을 찾을 수 없습니다.")
except Exception as e:  
  print("알 수 없는 오류 발생:", e)

- 파일 입출력에는 항상 예외처리를 함께 써야 안정적  
- 예상되는 에러만 명확하게 걸러주는 것이 중요

━━━━━━━━━━━━━━━━━━━

📦 파일 포맷 차이 요약

| 포맷 | 구조 | 용도 | 파이썬 모듈 |
|------|------|------|-------------|
| TXT | 텍스트 | 메모, 로그 | open()  
| CSV | 테이블형 | 엑셀, 보고서 | csv  
| JSON | 키-값 | 설정, API | json

━━━━━━━━━━━━━━━━━━━

💬 킴별의 한마디  
“데이터를 다룰 줄 아는 개발자와 그렇지 않은 사람의 차이는  
파일 처리에서부터 시작됩니다.  
텍스트, CSV, JSON… 하나씩 익혀두면 다 쓸모 있습니다.”

━━━━━━━━━━━━━━━━━━━


728x90