- csv 파일
- 구조화된 텍스트 파일
- row와 column을 가지고 있다.
- 구분자 사용 ( , )
- 파일 운영체제에 따른 줄바꿈 문자가 다름
리눅스/맥 : \n
윈도우즈 : \r\n
- 컬럼 이름이 첫번째 라인에 올 수 있다.
- csv 특징
- 값의 데이터 타입이 없다. 모든 값은 문자열
- 각 셀의 폰트나 컬러가 없다.
- 워크시트가 없다 (하나의 워크시트만 존재)
- 셀의 높이나 너비가 없다. 셀 병합도 없다.
- 이미지나 차트를 포함할 수 없다.
- 리스트, 딕셔너리와 변환가능
- csv 파일 --> 리스트로 로딩하기
import csv # 코어 모듈
import pprint # 개선된 프린트
with open('mycsv.csv', 'r') as file:
reader = csv.reader(file)
park_list = list(reader)
pprint.pprint(park_list)
with 구문을 사용해서 file.close()가 자동으로 동작된다.
#### 위 내용과 동일한 내용 #####
file = open('mycsv.csv', 'r')
reader = csv.reader(file)
park_list = list(reader)
pprint.pprint(park_list)
file.close()
with 구문을 사용하지 않을 경우는 file.close()를 반드시 사용하여 파일을 닫아 줘야 한다.
- 리스트 --> csv 파일로 저장
import csv # 코어 모듈
# newline=''은 윈도우에서 개행 관련해서 사용, 미사용시 두줄 개행됨
with open('mycsv.csv', 'w', newline='') as file:
writer = csv.writer(file)
writer.writerow(['aaa', 'bbb', 'ccc', 'ddd'])
writer.writerow(['111', '222', '333', '444'])
writer.writerow([1, 11, 111, 1111])
- csv 파일 --> 딕셔너리로 로딩
# 헤더가 있는 경우
import csv
with open('mycsv.csv', 'r') as file:
reader = csv.DictReader(file) # 딕셔너리용 reader
for row in reader:
print(row)
https://replit.com/@dhshin38/Tutorial-Python#mycsv.py
'Python' 카테고리의 다른 글
Python 웹 스크레핑 예제 (0) | 2022.01.23 |
---|---|
Python 이메일 보내기, 가져오기 (0) | 2022.01.23 |
Python 엑셀 읽기, 쓰기 (0) | 2022.01.23 |
Python 클래스, 상속, Override (0) | 2022.01.23 |
Python logging 로그 (0) | 2022.01.23 |