파이썬에서는 openpyxl를 설치하여 엑셀을 다룰 수 있다.
pip install openpyxl1
❓ 워크북 = 엑셀 파일
워크북은 하나 이상의 워크시트로 구성 됨
Workbook()
: 워크북 생성 ➜ 워크북 안, 하나의 워크시트 자동 생성.active()
: 현재 활성화 되어있는 워크시트 선택import openpyxl
wb = openpyxl.Workbook()
ws = wb.active
.create_sheet(‘시트명’, n)
: 새로운 워크시트 생성n
: 시트를 생성할 위치 wb = openpyxl.Workbook()
new_ws = wb.create_sheet('시트명')
load_workbook(‘열고자 하는 파일명’)
: 모든 엑셀의 내용을 한 번에 가져옴from openpyxl import load_workbook
wb = load_workbook('파일명')
ws = wb.active
❗ load_workbook()
는 엑셀 파일이 매우 큰 경우 못 가져오는 경우가 발생할 수 있고 한번에 가져오는 과정이 매우 느리다.😧
🌈 read_only=True
라는 인자 값 추가
➜ 읽기 전용 파일이 되고 내용을 한번에 다 가져오지 않아 엑셀 파일이 매우 큰 경우에도 문제가 생기지 않는다.
❗ BUT ❗ 읽기 전용으로 데이터를 가져오는 경우
: 특정한 열을 지정해서 데이터 활용할 수 없고, .iter_rows()
를 이용하여 한 행씩 데이터를 가져와 활용해야 한다.
ws['A1']
ws['A1:B2']
ws.cell(row = x, column = y)
ws.cell(x, y)
.value
: 셀에 저장된 값을 가져옴print(ws['A1']) ➜ [결과값] : <Cell 'Sheet1'.A1>
print(ws['A1'].value) ➜ [결과값] : 셀 A1에 저장된 데이터 값
ws.['A1'] = '데이터'
ws.cell(x, y, '데이터')
.append()
: 시트의 마지막 행에 새로운 행 추가 ws.append([1, 2, 3])
ws.append(['A', 'B', 'C'])
.save(‘파일명’)
: 파일명으로 워크북 저장.close()
: wb.save('파일명')
wb.close()