Python辦公之Excel(openpyxl)、PPT(python-pptx)、Word(python-docx)

概述

  • 以下是 Python 中處理 Office 文檔的三個常用庫的介紹及基礎用法
  • 視頻教程資料:https://pan.quark.cn/s/a2faff7aab76
    在這里插入圖片描述

1. openpyxl(處理 Excel)

用途:專門用于讀寫 Excel 2010 及以上版本的 .xlsx.xlsm 文件。

核心功能

  • 創建、修改 Excel 工作簿
  • 讀取和寫入單元格數據
  • 設置單元格格式(字體、顏色、邊框等)
  • 操作工作表(新增、刪除、重命名)
  • 處理公式、圖表等

簡單示例

from openpyxl import Workbook# 創建工作簿
wb = Workbook()
# 獲取活動工作表
ws = wb.active
# 寫入數據
ws['A1'] = '姓名'
ws['B1'] = '年齡'
ws.append(['張三', 25])
ws.append(['李四', 30])
# 保存文件
wb.save('example.xlsx')

2. python-docx(處理 Word)

用途:用于創建和修改 Word 的 .docx 文檔(不支持舊版 .doc)。

核心功能

  • 創建文檔、添加段落和標題
  • 設置文本格式(字體、大小、加粗、斜體等)
  • 插入表格、圖片、列表
  • 調整頁面布局(頁邊距、紙張大小等)
  • 操作頁眉頁腳

簡單示例

from docx import Document
from docx.shared import Inches# 創建文檔
doc = Document()
# 添加標題
doc.add_heading('Python 操作 Word 示例', level=1)
# 添加段落
p = doc.add_paragraph('這是一個 ')
p.add_run('加粗的').bold = True
p.add_run(' 文本段落。')
# 添加表格
table = doc.add_table(rows=2, cols=2)
table.cell(0, 0).text = '姓名'
table.cell(0, 1).text = '職業'
table.cell(1, 0).text = '張三'
table.cell(1, 1).text = '工程師'
# 保存文件
doc.save('example.docx')

3. python-pptx(處理 PowerPoint)

用途:用于創建和修改 PowerPoint 的 .pptx 演示文稿。

核心功能

  • 創建幻燈片、設置布局
  • 添加文本框、形狀、圖片
  • 設置文本格式和段落樣式
  • 操作幻燈片(新增、刪除、重排)
  • 調整幻燈片背景、主題等

簡單示例

from pptx import Presentation
from pptx.util import Inches, Pt# 創建演示文稿
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 操作 PPT 示例"
subtitle.text = "使用 python-pptx 庫"# 添加內容幻燈片
slide_layout = prs.slide_layouts[1]
slide = prs.slides.add_slide(slide_layout)
title = slide.shapes.title
content = slide.placeholders[1]
title.text = "主要功能"
tf = content.text_frame
tf.text = "1. 創建幻燈片\n2. 添加文本和圖片\n3. 設置格式"# 保存文件
prs.save('example.pptx')

共同點與注意事項

  • 均為第三方庫,需通過 pip install 庫名 安裝
  • 主要支持新建和修改操作,對復雜格式的解析能力有限
  • 不支持宏文件的完全編輯(如 .xlsm 中的宏代碼無法直接修改)

這些庫能有效實現辦公文檔的自動化處理,適合批量生成報告、處理數據等場景。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/94357.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/94357.shtml
英文地址,請注明出處:http://en.pswp.cn/web/94357.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

openHiTLS開源發布HPKE(混合公鑰加密)特性:讓數據加密在 “魚與熊掌”間找到最優解

引言 數字世界里,信息傳遞都面臨著兩難挑戰,我們既要跑得夠快,又要防止被不法分子半路 “搶包”或者“偷換”。HPKE(混合公鑰加密)可以結合傳統對稱和非對稱算法優勢,兼具高速傳輸與強安全性,成…

【鏈表 - LeetCode】206. 反轉鏈表【帶ACM調試】

206. 反轉鏈表 - 力扣(LeetCode) 題解 迭代版本 一共三個指針,一個是記錄最開始的節點,一個是當前反轉節點,一個是下一個待反轉的節點。 記住這里是反轉,所以,針對節點來看,將當…

langgraph快速搭建agent后端和react前端

官方文檔 一、后端 1.安裝基礎依賴 pip install --upgrade "langgraph-cli[inmem]"2.下載模版項目 在終端運行 langgraph new ./example --template new-langgraph-project-python這里是在當前文件夾下新建文件夾example,里面是下載的langgraph模版項…

第2章:幽靈協議初現

林薇的手指剛觸碰量子控制臺的“時間錨點”按鈕,Elysium的拓撲圖突然炸開一片猩紅。0.000001秒的延遲后,屏幕中央浮現出一個10KB的幽靈協議塊——它不占任何經典內存,卻在量子態中“呼吸”。“它在……重寫協議。”林薇的BCI接口傳來低沉的嗡…

Unity其他--【MMD】如何在Unity中制作MMD

小菲搖之前學習了在Unity中使用動畫狀態機控制人物,以及用Shader去對氛圍圖形進行渲染,然后又刷到一些MMD的視頻,我就想著MMD能做的事情感覺Unity應該也都能做而且更方便的吧,所以就嘗試做了一下。當然這里主要是記錄一下自己是怎…

從技術精英到“芯”途末路:一位工程師的沉淪與救贖

作者:邱戈龍、曾建萍【長昊律所】 專注于商業秘密、軟件著作權的專業型律師事務所,擅長民事、行政、刑事多重救濟途徑,為眾多科學技術領域的商業秘密、軟件著作權類案件提供侵權維權、辯護、司法鑒定、司法審計、調查取證等高品質專項法律服務…

刷題日記0824

兩眼一睜就是刷!今日計劃5道3/5昨天遇到了幾件令人心情不好的小事,今天還要處理一下。一早上的好心情被小小的破壞了一下。1056. 易混淆數 簡單有思路,心情好。耶比耶比,算是一遍過,這次考慮很周。寫完了有一種一遍過的…

Qt c++開發中的delete QThread操作需注意

1、析構函數中,不能執行QEventLoop,會造成 重入問題:事件循環可能觸發其他事件,導致已析構的對象被再次訪問信號槽連接:正在析構的對象可能還有未斷開的信號槽連接未定義行為:對象狀態不確定,可…

Seaborn數據可視化實戰:Seaborn圖表定制與數據可視化入門

高級圖表定制 學習目標 通過本課程你將掌握如何使用Seaborn庫進行高級圖表定制,包括圖表的標題、圖例、注釋的添加,以及圖表布局和大小的調整。這些技能將幫助你更有效地展示數據,使你的數據故事更加生動和有說服力。 相關知識點 Seaborn高級…

nano命令使用方法

nano 是 Ubuntu 等 Linux 系統中常用的輕量級文本編輯器,輕量易用,特別適合適合快速編輯配置文件、腳本等。以下是其核心使用方法:一、基本操作:打開 / 創建文件bash# 打開已存在文件(若文件不存在則創建) …

C#_gRPC

6.3 gRPC:高性能跨語言服務間通信 gRPC是一個高性能、開源、通用的RPC(Remote Procedure Call)框架,由Google開發并基于其多年的內部使用經驗(Stubby)。它現在是Cloud Native Computing Foundation&#xf…

Ubuntu 多版本 librealsense 與 realsense_ros 編譯并兼容 L515 等設備

這篇博客用來記錄如何在 Ubuntu 下編譯多個版本的 librealsense 并使用 L515 和 D435i 等設備。核心在于 L515 這款設備已經停止維護,直接安裝的方案不支持這個設備,只支持 D435i 等后期產品。如果想要同時使用新老的 realsense 產品,需要單獨…

Java 泛型 T、E、K、V、?、S、U、V

目錄 一、概述 二、為什么使用泛型 三、常見泛型類型參數的含義與用途 示例一:使用 T 定義泛型類 示例二:使用 E 表示集合元素 示例三:使用 K 和 V 表示鍵值對 示例四:使用 ? 通配符處理未知類型 四、通配符 ? 的擴展用…

1688拍立淘接口數據全面解析詳細說明(item_search_img)

一、接口概述 1688拍立淘接口是阿里巴巴1688平臺提供的基于圖像識別的商品搜索服務,允許開發者通過上傳商品圖片來搜索平臺上的同款或相似商品。該接口的主要功能是接收用戶上傳的圖片(或圖片的相關信息),并通過1688平臺的圖像識…

【Docker項目實戰】使用Docker部署輕量級LetsMarkdown文本編輯器

【Docker項目實戰】使用Docker部署輕量級Markdown文本編輯器一、LetsMarkdown介紹1.1 LetsMarkdown簡介1.2 主要特點二、本次實踐介紹2.1 本地環境規劃2.2 本次實踐介紹三、本地環境檢查3.1 檢查Docker服務狀態3.2 檢查Docker版本3.3檢查docker compose 版本四、拉取容器鏡像五…

Node.js自研ORM框架深度解析與實踐

Node.js自研ORM框架深度解析與實踐 前言 在現代Web開發中,對象關系映射(ORM)框架扮演著至關重要的角色。它們為開發者提供了一層抽象,使得數據庫操作變得更加簡單和直觀。本文將深入解析一個基于Node.js和MySQL的自研ORM框架&…

匯總圖片拖進ps中 photoshop同時打開幾個文件夾

如果你有許多文件夾,你想選中一部分,然后把里面的圖片全部拖進photoshop當中,但是文件夾又不能直接拖進去,那么你可以嘗試使用一下這個工具,首先測試一下直接拖文件夾。選中你要處理的文件夾,直接拖進photo…

mysql 5.7 查詢運行時間較長的sql

開發過程遇到sql 執行時間長,又取消不了的情況 可使用 kill query ID 殺死進程獲取正在運行的sqlSELECT ID, -- 進程ID:MySQL服務器分配給每個連接的唯一標識符,用于區分不同的客戶端連接USER, …

MongoDB 從入門到實踐:全面掌握文檔型 NoSQL 數據庫核心操作

目錄 一、MongoDB 基礎準備 1. 官方資源獲取 2. 安裝步驟解析 二、MongoDB 核心指令詳解 1. 數據庫操作指令 2. 集合操作指令 3. 文檔操作指令 查詢文檔 插入文檔 修改文檔 刪除文檔 三、進階查詢技巧 1. 運算符的靈活運用 比較運算符 邏輯運算符 范圍與成員運算…

CVPR2025丨遙感領域,全模態與秒超高清遙感建模重大突破,性能提升創新點

關注gongzhonghao【CVPR頂會精選】剛入門遙感建模時,總好奇別人為什么總能提出新方法?慢慢摸索后才發現,創新點并不是硬憋出來的,而是要從數據特性、傳感器差異、地物細節以及環境變化中發現機會。不同波段、不同分辨率、不同時相…