-
19. Excel 및 CSV 파일 다루기공부합시다!/python 2023. 2. 17. 00:15728x90
마지막 장이네요!
오늘 Python 연재를 끝내면서 잠시 휴식모드로 들어가려 합니다.
일정이 너무 바빠진 관계로..... - 다시 찾아온 기회 잘 살려봐야겠지요!
지난 시간 파일 다루기에 이어 오늘은 Excel 및 CSV 파일 다루기 입니다.대용량 파일 내보내기에 많이 사용이 되는 CSV파일 다루기와 그 형제격인 Excel 파일 다루기 입니다.
파이썬으로 이런 작업까지
''' Excel, CSV 처리 1. csv 읽기 2. csv 쓰기 3. xls, xlsx 읽기 4. 패키지 설치 ''' # 파이썬 외부 파일 처리 # 파이썬 Excel, CSV 파일 읽기 및 쓰기 # CSV : MIME - test/csv # 예제 1 import csv with open('./resource/sample1.csv', 'r') as f: reader = csv.reader(f) next(reader) # csv파일의 칼럼 list 제외 # 확인 print(reader) print(type(reader)) print(dir(reader)) print() for c in reader: print(c) # 예제 2 import csv with open('./resource/sample1.csv', 'r') as f: reader = csv.reader(f, delimiter='|') next(reader) # csv파일의 칼럼 list 제외 # 확인 print(reader) print(type(reader)) print(dir(reader)) print() for c in reader: print(c) # 예제 3 with open('./resource/sample1.csv', 'r') as f: reader = csv.DictReader(f) for c in reader: print(c) # 예제 4 w = [[1,2,3],[4,5,6],[7,8,9],[10,11,12],[13,14,15],[16,17,18]] with open('./resource/sample4.csv', 'w', newline='') as f: # newline 한줄 제거 wt = csv.writer(f) for v in w: # 특정 조건을 필터링 할 경우는 for문이 적당 wt.writerow(v) # 예제 5 with open('./resource/sample5.csv', 'w', newline='') as f: wt = csv.writer(f) wt.writerows(w) # XSL, XSLX # openpyxl, xlsswriter, xlrd, xlwt, xlutils # pandas를 주로 사용 # pip install xlrd # pip install openpyxl # pip install pandas import pandas as pd # 옵션 -> sheetname="시트명" 또는 숫자, header=숫자, skiprow=숫자 xlsx = pd.read_excel('./resource/sample.xlsx') print(xlsx.head()) # 문서 앞부분 5줄 print() print(xlsx.tail()) # 문서 끝부분 5줄 print(xlsx.shape) # 행과 열 수 출력 # 엑셀 or csv 다시 쓰기 xlsx.to_excel('./resource/result.xlsx', index=False) xlsx.to_csv('./resource/result.csv', index=False)
728x90'공부합시다! > python' 카테고리의 다른 글
18. File 다루기 (0) 2023.02.16 17. 예외처리 (0) 2023.02.16 16. Module과 Package (0) 2023.02.14 15. Class 상속 (0) 2023.02.13 14. Class (0) 2023.02.10