엑셀과 CSV로 하는방법
먼저, pandas와 XlsxWriter를 설치한다.
pip install pandas
pip install XlsxWriter
* pandas : 데이터 분석, 처리 등을 쉽게 하기 위해 만들어진 파이썬 패키지. 대용량 데이터를 안정적으로 쉽게 처리할 수 있다.
* XlsxWriter : 엑셀파일 처리 및 사용하기 위한 라이브러리
1 2 | from pandas import DataFrame import xlsxwriter | cs |
- 엑셀 export 하는 코드
1 2 3 4 5 6 7 | def export_date_excel(request): header = [ 'A','B','C'] dataF = DataFrame(detail_list,columns= header) filename = '/folder/excel_.xlsx' dataF.to_excel(filename,'Sheet1',index=False, engine='xlsxwriter') .... | cs |
header에는 각 열의 이름을 넣으면된다. 없어도 됨.
DataFrame 객체로 데이터를 만들고 .to_exel() 하면 끝
engine에다 xlsxwriter을 넣지 않아도 pandas에서는 OpenPyXl 을 이용해서 엑셀파일에다 쓸수 있다. 하지만 속도가 너무 느려서 찾아보니,
xlsxwriter 모듈을 사용하여 속도 높이는 방법이 있었다.
- csv export 하는 코드
엑셀 export하는 방법에서, 파일명과 to_csv 로만 바꿔주면 된다.
1 2 3 4 5 6 | def export_date_csv(request): dataF = DataFrame(detail_list,columns= header) filename = '/folder/csv_.csv' dataF.to_csv(filename, encoding="euc-kr", index=False) ... |
그런데 한글이 있으면 깨져서 나올 수 있으니 encoding = "euc-kr" 을 해주도록 하자.
끝
참고 :
'python' 카테고리의 다른 글
python 인스턴스 클래스가 담겨진 list 특정 변수값으로 정렬하기 (0) | 2018.04.18 |
---|---|
inconsistent use of tabs and spaces in indentation 에러 해결 (0) | 2018.03.27 |
파이썬3.6 [datetime] 날짜 시간 처리 모듈 (0) | 2018.02.22 |
with 문 (0) | 2018.01.15 |
python 공부하기 좋은 사이트 (0) | 2018.01.09 |