업무 자동화에 필요한 파이썬 라이브러리 소개
엑셀(Excel)
, 워드(Word)
, 파워포인트(PowerPoint)
오피스 프로그램 별로 자동화를 위한 다른 라이브러리를 사용합니다.
이번 수업에서는 각각의 오피스 프로그램에 대한 자동화 라이브러리를 소개하고, 간단한 예제 코드를 통해 어떻게 활용하는지 알아보겠습니다.
Excel 자동화 라이브러리: pandas와 openpyxl
엑셀 파일을 다루다 보면, 반복적으로 데이터 처리를 해야 하는 경우가 많습니다.
이럴 때 pandas와 openpyxl 같은 라이브러리를 사용하면 손쉽게 엑셀 작업을 자동화할 수 있습니다.
데이터를 조작하고 분석하는 pandas
pandas는 데이터 분석에 특화된 파이썬 라이브러리입니다.
대용량의 데이터 집계, 정렬, 분류 등의 작업을 매우 빠르고 간편하게 수행할 수 있습니다.
pandas는 표와 같이 행(row)과 열(column)로 구성된 데이터프레임(DataFrame)이라는 데이터 구조를 제공합니다.
import pandas as pd
# 데이터프레임 생성
df = pd.DataFrame({
'name': ['Alice', 'Bob', 'Charlie', 'David'],
'age': [25, 22, 30, 35],
'city': ['New York', 'Los Angeles', 'Chicago', 'Houston']
})
# 데이터프레임 출력
print(df)
name age city
0 Alice 25 New York
1 Bob 22 Los Angeles
2 Charlie 30 Chicago
3 David 35 Houston
pandas를 활용하면 엑셀 파일을 읽어와 데이터프레임으로 변환하고, 다양한 연산을 통해 복잡하고 방대한 데이터를 체계적으로 처리할 수 있습니다.
Excel 파일을 다루는 openpyxl
openpyxl은 엑셀 파일을 생성, 수정, 저장할 수 있는 라이브러리입니다.
탭 별로 구분된 엑셀 파일을 병합하거나, 특정 셀의 값을 수정하는 등의 다양한 엑셀 작업을 수행할 수 있습니다.
from openpyxl import load_workbook
# 엑셀 파일 열기
workbook = load_workbook('input_file.xlsx')
# 특정 시트 선택
sheet = workbook['Sheet1']
# 셀 값 수정
sheet['A1'] = 'Hello, Excel!'
# 변경 사항 저장
workbook.save('output_file.xlsx')
PowerPoint 자동화 라이브러리: python-pptx
파이썬을 활용하면 python-pptx 라이브러리로 파워포인트를 자동화할 수 있습니다.
python-pptx 라이브러리를 활용하면 슬라이드를 생성하고, 슬라이드에 텍스트를 추가하거나 이미지를 삽입할 수 있습니다.
from pptx import Presentation
# 새로운 프레젠테이션 생성
prs = Presentation()
# 제목 슬라이드 추가
slide = prs.slides.add_slide(prs.slide_layouts[0])
# 제목과 부제목 설정
title = slide.shapes.title
subtitle = slide.placeholders[1]
title.text = "Welcome to Python-PPTX"
subtitle.text = "Automating PowerPoint is fun!"
# 파일 저장
prs.save('output_file.pptx')
Word 자동화 라이 브러리: python-docx
문서 작성이나 편집을 자동화하고 싶다면 python-docx 라이브러리를 활용할 수 있습니다.
이 라이브러리는 워드 문서의 텍스트 추가, 서식 설정, 표 생성 등을 파이썬으로 쉽게 할 수 있게 돕습니다.
from docx import Document
# 새로운 문서 생성
doc = Document()
# 제목 추가
doc.add_heading('Automating Word with Python', 0)
# 본문 추가
doc.add_paragraph('This document was created using python-docx.')
# 문서 저장
doc.save('output_file.docx')
다음 내용이 궁금하다면?
코드프렌즈 PLUS 멤버십 가입 or 강의를 등록해 주세요!