티스토리 뷰

 

import csv

 

with open('./resource/sample1.csv', 'r') as f:

    reader = csv.reader(f)

    #next(reader) # skip header of csv file

    print(reader, type(reader))

    print(dir(reader))

    for c in reader:

        print(c)

 

 

with open('./resource/sample2.csv', 'r') as f:

    # delimiter : 어떤 문자를 기준으로 잘라서 list로 형성할지

    reader = csv.reader(f, delimiter = "|")

    for c in reader:

        print(c)

 

with open('./resource/sample1.csv', 'r') as f:

    reader = csv.DictReader(f)

    for c in reader:

        for k, v in c.items():

            print(k, v)

 

 

w = [[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12], [13, 14, 15], [16, 17, 18]]

# 새롭게 쓰는 파일에서 줄바꿈을 하지 않은 상태로 쓰겠다.. 기본 값은 엔터가 2번씩 된 상태로 쓰여짐

with open ('./resource/sample3.csv', 'w', newline ='') as f:

    wt = csv.writer(f)

    for v in w:

        wt.writerow(v)



with open ('./resource/sample3.csv', 'w', newline ='') as f:

    wt = csv.writer(f)

    # 한 번에 쓸 때, writerows

    wt.writerows(w)

 

 

 

# XSL, XLSX

# openpycl, xlsxwriter, xlrd, xlwt, xlutils

# pandas를 주로 사용

 

import pandas as pd

 

# sheetname = '시트명' 또는 숫자,

# header = 숫자 : 몇 번째 행을 헤더로 지정할 것인지

# skiprow = 숫자 : 몇 번째 행은 가져오지 않을 것인지

 

xlsx = pd.read_excel('./resource/sample.xlsx')

    print(xlsx.head())

    print(xlsx.tail())

    print(xlsx.shape)

 

# 엑셀 or csv 파일로 다시 쓰기

xlsx.to_excel('./resource/result.xlsx', index = False)

xlsx.to_csv('./resource/result.csv', index = False)

 

댓글