1.1 什麼是 python-pptx

python-pptx 是一個用於創建和修改 PowerPoint 文件(.pptx 格式)的 Python 庫。它支持如下操作:

  • 創建新幻燈片
  • 添加文本、圖片、圖表、表格、形狀等
  • 自定義佈局與樣式
  • 模板複用與內容批量替換

應用場景示例

  • 自動生成月度/季度報告
  • 批量創建產品展示 PPT
  • 將分析結果自動化輸出為演示文稿
  • 教學輔助材料生成(如習題講解、課件)

1.2 安裝與環境準備

安裝方式

使用 pip 安裝:

pip install python-pptx

如果你尚未安裝 Python,可訪問官網下載安裝:https://www.python.org

推薦環境

  • Python 3.7+
  • 建議使用虛擬環境(venvconda
  • 常配套使用庫:
  • pandas(表格與數據)
  • matplotlibplotly(圖表生成)
  • jinja2(模板填充)

安裝示例

# 創建並激活虛擬環境(可選)
python -m venv pptx_env
source pptx_env/bin/activate  # Windows 用 pptx_env\Scripts\activate

# 安裝庫
pip install python-pptx pandas matplotlib

驗證安裝

from pptx import Presentation

prs = Presentation()
prs.save("test.pptx")

運行後,當前目錄下應生成一個空白的 test.pptx 文件。

1.3 Hello, PowerPoint:創建第一個演示文稿

from pptx import Presentation

# 創建演示文稿對象
prs = Presentation()

# 添加一頁標題幻燈片(第一個參數為版式索引)
slide_layout = prs.slide_layouts[0]
slide = prs.slides.add_slide(slide_layout)

# 填充標題與副標題內容
title = slide.shapes.title
subtitle = slide.placeholders[1]

title.text = "你好,Python-pptx!"
subtitle.text = "這是我們的第一張幻燈片"

# 保存文件
prs.save("hello_pptx.pptx")

運行代碼後,你將得到如下結構的 PPT 文件:

  • 幻燈片 1:
  • 標題:你好,Python-pptx!
  • 副標題:這是我們的第一張幻燈片

小貼士

  • slide_layouts[0] 是“標題幻燈片”佈局,其他佈局後續章節會詳細介紹。
  • shapes.title 是快捷訪問標題文本框的方式,推薦使用。

1.4 .pptx 文件結構簡述

PowerPoint .pptx 文件實際是一個壓縮包(zip 格式),其內部由 XML 文件構成:

/ppt
├── slides/          ← 幻燈片內容
├── slideLayouts/    ← 佈局模板
├── slideMasters/    ← 幻燈片母版
├── media/           ← 插入的圖片
└── presentation.xml ← 總體結構與順序

雖然我們不直接操作這些 XML 文件,但瞭解這一結構有助於理解為何 python-pptx 有些操作限制,例如:

  • 無法插入動畫
  • 圖表樣式較難自定義
  • 自定義母版需提前在 PowerPoint 中設計好

本章練習

練習 1:安裝並測試庫

  • 在本地安裝 python-pptx
  • 編寫一個程序,創建一個包含標題和副標題的幻燈片

練習 2:嘗試不同佈局

  • 使用 slide_layouts[1]slide_layouts[5],觀察其效果
  • 寫出每個佈局的用途和內容結構