[파이썬] 파일 포맷 처리 (CSV, JSON, XML)

파일 포맷 처리는 데이터 처리를 위해 사용되는 가장 기본적인 방법 중 하나입니다. CSV, JSON, XML 등의 파일 포맷을 사용하면 데이터를 쉽게 읽고 쓸 수 있습니다. 이 블로그 글에서는 파이썬을 사용하여 CSV, JSON, XML 파일을 읽고 쓰는 방법에 대해 알아보겠습니다.

CSV 파일 읽기

CSV 파일은 쉼표로 구분된 값들의 목록으로 구성되어 있습니다. 파이썬에서 CSV 파일을 읽기 위해서는 csv 모듈을 사용합니다. 아래 예제는 CSV 파일을 읽어 리스트로 반환하는 코드입니다.

import csv

def read_csv(filename):
    with open(filename, 'r') as csv_file:
        csv_reader = csv.reader(csv_file)
        return list(csv_reader)

CSV 파일 쓰기

CSV 파일을 쓰기 위해서는 csv 모듈의 writer 함수를 사용합니다. 아래 예제는 리스트를 CSV 파일로 쓰는 코드입니다.

import csv

def write_csv(filename, data):
    with open(filename, 'w') as csv_file:
        csv_writer = csv.writer(csv_file)
        csv_writer.writerows(data)

JSON 파일 읽기

JSON 파일은 자바스크립트 객체 표기법으로 구성된 파일입니다. 파이썬에서 JSON 파일을 읽기 위해서는 json 모듈을 사용합니다. 아래 예제는 JSON 파일을 읽어 딕셔너리로 반환하는 코드입니다.

import json

def read_json(filename):
    with open(filename, 'r') as json_file:
        return json.load(json_file)

JSON 파일 쓰기

JSON 파일을 쓰기 위해서는 json 모듈의 dump 함수를 사용합니다. 아래 예제는 딕셔너리를 JSON 파일로 쓰는 코드입니다.

import json

def write_json(filename, data):
    with open(filename, 'w') as json_file:
        json.dump(data, json_file)

XML 파일 읽기

XML 파일은 태그로 구성된 파일입니다. 파이썬에서 XML 파일을 읽기 위해서는 xml.etree.ElementTree 모듈을 사용합니다. 아래 예제는 XML 파일을 읽어 엘리먼트 트리로 반환하는 코드입니다.

import xml.etree.ElementTree as ET

def read_xml(filename):
    tree = ET.parse(filename)
    return tree.getroot()

XML 파일 쓰기

XML 파일을 쓰기 위해서는 xml.etree.ElementTree 모듈의 write 함수를 사용합니다. 아래 예제는 엘리먼트 트리를 XML 파일로 쓰는 코드입니다.

import xml.etree.ElementTree as ET

def write_xml(filename, root):
    tree = ET.ElementTree(root)
    tree.write(filename)

위 예제들을 사용하면 CSV, JSON, XML 파일을 읽고 쓰는 데 필요한 모든 기능을 가지고 있습니다. 파이썬을 사용하면 데이터 처리를 위해 파일 포맷을 쉽게 읽고 쓸 수 있습니다.