SEOYUL
산호심는 블로그
SEOYUL
  • 분류 전체보기 (100)
    • IT (70)
      • Go (3)
      • Linux (34)
      • Python +Django (31)
      • RaspberryPi (2)
    • Memo (27)
      • 멀티캠퍼스 (26)

인기 글

최근 댓글

최근 글

hELLO · Designed By 정상우ⓒMIT.
SEOYUL

산호심는 블로그

파이썬 파일 처리 - csv와 XSL, XLSX
IT/Python +Django

파이썬 파일 처리 - csv와 XSL, XLSX

2020. 10. 1. 14:34

파이썬 Excel, CSV 파일 읽기 및 쓰기

with open('./resource/sample2.csv', 'r') as f:
    reader = csv.reader(f, delimiter='|')  # 구분자 선택
    # next(reader) Header 스킵
    # 확인
    print(reader)
    print(type(reader))
    print(dir(reader))  # __iter__ 확인
    print()

    for c in reader:
        print(c)

csv 데이터의 dict 변환

with open('./resource/sample1.csv', 'r') as f:
    reader = csv.DictReader(f)
    # 확인
    print(reader)
    print(type(reader))
    print(dir(reader))  # __iter__ 확인
    print()

    for c in reader:
        for k, v in c.items():
            print(k, v)
        print('-----')

데이터를 csv로 쓰기

# writerow 사용해서 한줄씩 쓰기
with open('./resource/sample3.csv', 'w') as f:  # newline='' 테스트
    wt = csv.writer(f)
    # dir 확인
    print(dir(wt))
    print(type(wt))
    for v in w:
        wt.writerow(v)

# writerows 한번에 모든 리스트를 다 쓰게함
with open('./resource/sample3.csv', 'w', newline='') as f: # newline 개행 형식
    wt = csv.writer(f)
    # dir 확인
    print(dir(wt))
    print(type(wt))

    wt.writerows(w) 

XSL, XLSX 사용하기

  • XSL, XLSX : MIME - applications/vnd.excel, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
  • pip install pandas 설치 필요
  • pip install xlrd 설치 필요
  • pip install openpyxl 설치 필요
  • openpyxl, xlsxwriter, xlrd, xlwt, xlutils 등 있으나 pandas를 주로 사용(openpyxl, xlrd) 포함
import pandas as pd

 # sheetname='시트명' 또는 숫자, header=3, skiprow=1
xlsx = pd.read_excel('./resource/sample.xlsx')

# 상위 데이터 확인
print(xlsx.head())
print()

# 데이터 확인
print(xlsx.tail())
print()

# 데이터 구조
print(xlsx.shape) # 행, 열

# 엑셀 or CSV 다시 쓰기
xlsx.to_excel('./resource/result.xlsx', index=False)
xlsx.to_csv('./resource/result.csv', index=False)
저작자표시 비영리 변경금지 (새창열림)
    SEOYUL
    SEOYUL
    산호는 해양 생물의 4분의 1에게 집을 제공하는 만큼 생태계에서 중요한 근간이라고 합니다. 하지만 최근 환경 파괴로 산호지대가 사라지고 있어 여러 국가에서 산호를 심는 활동을 한다고 합니다. 이와같이 꾸준한 내용으로 미래를 위한 블로그를 만들어가고자 합니다.

    티스토리툴바