Skip to content

Latest commit

Β 

History

History
102 lines (81 loc) Β· 3.13 KB

File metadata and controls

102 lines (81 loc) Β· 3.13 KB

μ—‘μ…€νŒŒμΌμ„ 파이썬으둜 μ²˜λ¦¬ν•˜κΈ°

λ§Žμ€ ν”„λ‘œμ νŠΈ λ§€λ‹ˆμ§• νŒŒμ΄ν”„λΌμΈνˆ΄μ„ 엑셀을 μ§€μ›ν•©λ‹ˆλ‹€. ν”„λ‘œμ νŠΈ μ΄ˆκΈ°μ— ν”„λ‘œμ νŠΈ λ§€λ‹ˆμ§• νˆ΄μ„ μ‚¬μš©ν•  수 μ—†λŠ” ν”„λ‘œμ νŠΈ μ΄ˆκΈ°λ‹¨κ³„μ—μ„œλŠ” ν”„λ‘œλ“€μ„œ, λ©”λ‹ˆμ €, κΈ°νšμžλ“€μ€ 엑셀을 많이 μ‚¬μš©ν•˜κΈ° λ•Œλ¬Έμž…λ‹ˆλ‹€.

보톡 ν”„λ‘œμ νŠΈ λ§€λ‹ˆμ§• νŒŒμ΄ν”„λΌμΈνˆ΄μ€ .csv, .xlsx νŒŒμΌμ„ μ§€μ›ν•˜λŠ” 것이 ν•„μˆ˜κ°€ λ˜μ—ˆμŠ΅λ‹ˆλ‹€.

LibreOffice μ„€μΉ˜

λ¦¬λˆ…μŠ€μ—μ„œλŠ” Excel λŒ€μ‹  LibreOfficeλ₯Ό 많이 μ‚¬μš©ν•©λ‹ˆλ‹€. LibreOffice 엑셀을 μ„€μΉ˜ν•΄λ΄…μ‹œλ‹€.

지원 예

Python 자주 μ‚¬μš©ν•˜λŠ” λͺ¨λ“ˆ

CSV νŒŒμ„œ

pythonμ—λŠ” csv νŒŒμ„œκ°€ 기본적으둜 νƒ‘μ œ λ˜μ–΄μžˆμŠ΅λ‹ˆλ‹€.

import csv

.csv 파일 읽기

#coding:utf8
import os
import csv
csvPath = os.path.expanduser("~/examples/csv/cglist.csv")
with open(csvPath) as csvFile:
    csvReader = csv.reader(csvFile, delimiter=',')
    for row in csvReader:
        print(row)

.csv 파일 μ €μž₯

import csv

with open('/path/cglist.csv', mode='w') as csv_file:
    fieldnames = ['ep','seq', 'scene', 'shot', 'note']
    writer = csv.DictWriter(csv_file, fieldnames=fieldnames)
    writer.writeheader()
    writer.writerow({'ep':'1','seq': 'CAR', 'scene': 'FOO', 'shot': '0010', 'note': 'cg car'})
    writer.writerow({'ep':'1','seq': 'CAR', 'scene': 'FOO', 'shot': '0020', 'note': 'add dust'})
    writer.writerow({'ep':'1','seq': 'CAR', 'scene': 'BAR', 'shot': '0010', 'note': 'cg car, add dust'})

Excel νŒŒμ„œ

자주 μ‚¬μš©ν•˜λŠ” 라이브러리λ₯Ό 일괄 μ„€μΉ˜ν•©λ‹ˆλ‹€.

$ pip install --user openpyxl
$ pip install --user xlsxwriter
$ pip install --user xlrd
$ pip install --user xlwt
$ pip install --user xlutils
$ pip install --user pillow <- 엑셀에 이미지λ₯Ό 넣을 λ•Œ μ‚¬μš©λ©λ‹ˆλ‹€.

.xlsx 파일 읽기

#coding:utf8
import os
from openpyxl import load_workbook

xlsxPath = os.path.expanduser("~/examples/xlsx/cglist.xlsx")
wb = load_workbook(filename=xlsxPath, read_only=True)
ws = wb["Sheet1"]
for row in ws.rows:
    for cell in row:
        print(cell.value)

.xlsx 파일 μ“°κΈ°

from openpyxl import Workbook
wb = Workbook()
dest  = 'output.xlsx'
ws1 = wb.active
ws1.title = "Sheet1"
ws1.append(["eq","seq","scene","shot","note"])
ws1.append(["1","CAR","FOO","0010","add cg car"])
ws1.append(["1","CAR","FOO","0020","add dust"])
ws1.append(["1","CAR","BAR","0010","add car, add dust"])
wb.save(filename = dest)

μ‹€μŠ΅

  • λ¦¬λΈŒλ ˆμ˜€ν”ΌμŠ€λ₯Ό μ„€μΉ˜ν•˜κ³  Excel νŒŒμΌμ„ λ§Œλ“€μ–΄μ„œ μ €μž₯ν•˜κ³  ν•΄λ‹Ή 파일둜 ν…ŒμŠ€νŠΈν•΄λ΄…μ‹œλ‹€.
  • μ—‘μ…€νŒŒμΌμ„ 직접 λ§Œλ“€μ–΄λ³΄κ³  데이터λ₯Ό λ‘œλ”©ν•΄λ³΄μ„Έμš”.

Reference