728x90
Python에서 CVS 파일 읽기 및 Json으로 변경하자.
이번에 CVS읽기 3가지 방식을 예시로 들어본다.
1. CVS 라이브러리 이용한 배열형로 읽기
2. CVS 라이브러리 이용한 사전형로 읽기
3. Pandas 이용한 CVS 읽기
※ 소스
import csv
import pandas
import json
fn = "data.csv"
# 1. csv파일 배열로 읽어오기.
f = open(fn, "r", encoding="utf8", errors="", newline="" )
dt = csv.reader(f, delimiter=",", doublequote=True, lineterminator="\r\n", quotechar='"', skipinitialspace=True)
header = next(dt)
print(header)
data = []
for row in dt:
#row는 list
data.append(row)
print(row)
f.close()
# json 변환
data2 = json.dumps(data)
print(data2)
f = open(fn, "r", encoding="utf8", errors="", newline="" )
dt = csv.DictReader(f)
data = []
for row in dt:
#row는dictionary
#row["column_name"] or row.get("column_name")으로 필요한 항목을 취득할 수 있다.
data.append(row)
print(row)
f.close()
# json 변환
data2 = json.dumps(data)
print(data2)
# 3. Pandas이용 csv파일 읽어오기.
data = pandas.read_csv(fn)
print(data)
# json 변환
data2 = json.dumps(data.to_dict())
print(data2)
# json 변환(한글포함)
data3 = json.dumps(data.to_dict(), ensure_ascii=False)
print(data3)
Data.csv
"순번","과목","점수"
1,"수학",50
2,"국어",40
3,"과학",55
4,"역사",60
5,"지리",40
※ 실행화면
728x90
반응형
'Software > Python' 카테고리의 다른 글
Python 시작하기 - CSV 저장 (0) | 2024.06.23 |
---|---|
Python 시작하기 - Mysql 조회 (0) | 2024.06.23 |
Python 시작하기 - BeautifulSoup (0) | 2024.06.22 |
Python 시작하기 -Web Page 읽기 (0) | 2024.06.22 |
Python 소개 - WSL(Linux)에서 PySide6 사용 (0) | 2023.12.14 |