파이썬 코드로 표를 만드는 방법
간단한 표를 작성할 때는 워드 프로그램의 테이블(Table, 표) 기능을 활용하는 것이 편리합니다.
하지만 대규모의 데이터를 표로 삽입하거나 반복적인 표 작성을 자동화하려면 python-docx 라이브러리를 사용하는 것이 좋습니다.
이번 수업에서는 python-docx를 사용하여 워드 파일에 표를 추가하는 방법을 알아보겠습니다.
참고 : 표로 시각화되는 데이터는 이해의 편의를 위해 파이썬 리스트로 정의되었습니다. 하지만 실제로는
pandas라이브러리로CSV파일을 파일 경로 및 URL로 불러와 사용하는 것이 일반적입니다.
add_table()
문서에 표를 추가하는 메서드입니다.
document.add_table(rows, cols)와 같이 사용하며
-
rows: 행(가로열)의 수 -
cols: 열(세로열)의 수
를 지정해야 합니다.
from docx import Document doc = Document() # 가로 3줄, 세로 2줄의 표 생성 table = doc.add_table(rows=3, cols=2)
table.cell(row, col)
특정 셀에 접근해 값을 설정하거나, 설정된 값을 가져옵니다.
table.cell(row, col)와 같이 사용하며 row는 행 번호(0부터 시작), col은 열 번호(0부터 시작)를 지정합니다.
# 1번째 행, 1번째 열의 셀 cell = table.cell(0, 0)
cell.text
셀에 텍스트를 설정하거나, 설정된 텍스트를 가져옵니다.
# 1번째 행, 1번째 열의 셀 cell = table.cell(0, 0) # 지정된 셀에 텍스트 추가 cell.text = "Hello"
table.style
표의 스타일을 설정합니다.
경계선을 포함한 표를 생성하려면 table.style = 'Table Grid'와 같이 사용합니다.
doc = Document() table = doc.add_table(rows=3, cols=2) # 실선 테두리를 포함한 표 생성 table.style = 'Table Grid'
table.add_row()
표에 새로운 행(가로줄)을 추가하는 메서드입니다.
table.add_row()와 같이 새로운 행을 추가할 수 있습니다.
row = table.add_row() row.cells[0].text = "New Cell"
table.add_column()
표에 새로운 열(세로줄)을 추가하는 메서드입니다.
table.add_column(width)와 같이 지정된 너비로 새로운 열을 추가할 수 있습니다.
열을 추가할 때는 반드시 너비(Width)를 지정해야 합니다.
from docx.shared import Inches table.add_column(Inches(1))
cell.merge(other_cell)
셀을 병합하는 메서드입니다.
아래 코드는 첫 번째 행의 두 셀을 병합하는 예시입니다.
a = table.cell(0, 0) b = table.cell(0, 1) a.merge(b) # 첫 번째 행의 두 셀을 병합
이 챕터의 강의 · 파워포인트와 워드 반복 업무를 파이썬 코드로 처리하는 방법
- 1. 반복적인 파워포인트 작업을 자동화하는 방법
- 2. 슬라이드에 텍스트 상자와 텍스트 추가하기
- 3. 텍스트 서식 글꼴, 크기, 색상 변경하기
- 4. 슬라이드에 이미지 삽입 및 조정하기
- 5. 슬라이드에 표(Table) 생성 및 관리하기
- 6. 엑셀 데이터를 슬라이드에 표로 삽입하기
- 7. 파이썬으로 차트(Chart) 생성 및 데이터 시각화하기
- 8. 빈칸 채우기 퀴즈
- 9. 파이썬 코드로 Word 문서 작성하기
- 10. 단락 추가 및 텍스트 서식 설정하기
- 11. 목록(List) 작성하기
- 12. 파이썬 코드로 표를 만드는 방법
- 13. 문서에 이미지 삽입하고 스타일링하기
- 14. 문서의 페이지 레이아웃 조정하기
- 15. openpyxl로 엑셀 데이터를 읽어와 워드 문서에 표와 텍스트 추가하기
- 16. 선택형 퀴즈
- 17. 도전! python-docx로 간단한 테이블 만들기
python-docx에서 표에 가로줄을 추가하는 메서드는 무엇일까요?
add_table()
table.cell(row, col)
table.add_row()
table.add_column()
학습 자료
AI 튜터
디자인
업로드
수업 노트
즐겨찾기
도움말