環境安裝
使用Python操作word大部分情況都是寫操作,也有少許情況會用到讀操作,在本次教程中都會進行講解,本次課程主要用到以下4個庫,請大家提前安裝。
升級pip(便於安裝最新庫)
python-docx(我們大部分操作都是使用此庫)
安裝方法:
使用方法:
官方文件:
https://python-docx。readthedocs。io/en/latest/index。html
win32com(主要用作doc轉docx格式轉換用)
安裝方法:
使用方法:
官方文件:
https://docs。microsoft。com/en-us/dotnet/api/microsoft。office。interop。word?view=word-pia
mailmerge(用作按照模板生成大量同類型文件)
安裝方法:
使用方法:
官方文件:
https://pypi。org/project/docx-mailmerge/
matplotlib(Python 的繪相簿,本期簡單講解,後期會有專門的課程)
安裝方法:
使用方法:
官方文件:
https://matplotlib。org/3。2。2/tutorials/introductory/sample_plots。html
Python-docx 新建文件
示例程式碼1:
效果如下:
示例程式碼 0。1 Python-docx新建文件。py:
效果如下:
Python-docx 編輯已存在文件
我們很多時候需要在已存在的word文件上新增自己的內容,那麼我們趕緊看看應該怎樣操作吧~
舊文件:
示例程式碼:
也許你會說,沒有沒搞錯,就這三句話?是的,就這三句,你就完成了舊文件的複製,如果你想修改,直接新增內容就行了呢!
效果如下:
win32com 將 doc 轉為 docx
舊文件:
示例程式碼:
效果如下:
win32com 操作 word
開啟新的word文件並新增內容
示例程式碼:
效果如下:
開啟已存在word文件並新增內容
前提條件:
示例程式碼:
效果如下:
轉換word為pdf
示例程式碼:
效果如下:
Python-docx 操作 word
官方文件:(最權威指南,沒有之一)
https://python-docx。readthedocs。io/en/latest/
Python-docx官方例程
前提條件:
示例程式碼:
最終效果:
Python-docx官方例程解析
匯入庫操作
匯入英寸單位操作(可用於指定圖片大小、表格寬高等)
新建一個文件
載入舊文件(用於修改或新增內容)
新增標題段落
新增段落操作
段落在 Word 中是基本內容。它們用於正文文字,也用於標題和專案列表(如專案符號)。
在指定段落上新增內容
新增標題操作
等級1-9 也就是標題1-標題9,我們可以在舊文件中將標題格式設定好,使用Python-docx開啟舊文件,再新增相應等級標題即可。
新增指定樣式段落
樣式詳情:
https://python-docx。readthedocs。io/en/latest/user/styles-understanding。html#understanding-styles
新增無序列表操作
新增有序列表操作
新增圖片操作
第一個引數為圖片路徑,需要正確無誤
第二個引數為圖片大小,單位英寸
新建表格操作
填充標題行操作
為每組內容新增資料行並填充
設定標題樣式操作
新增分頁符操作
儲存當前文件操作
Python-docx 表格樣式設定
表格樣式設定程式碼:
遍歷所有樣式:
效果如下(大家按照喜歡的樣式新增即可):
docx&matplotlib 自動生成資料分析報告
最終效果
資料獲取
我們這裡使用xlrd作為資料獲取所使用的庫,簡單回顧一下:
表格內容:
編寫資料獲取程式碼:
我們這裡只獲取使用者姓名和,分數,並將它們儲存到列表中,看程式碼。
獲取結果:
柱狀圖生成
我們先將獲取的姓名和成績使用 字典 資料結構關聯起來,再對其排序:
效果如下:
使用 matplotlib 生成柱狀圖:
效果如下:
生成最終報告
程式碼如下:
完整程式碼
Python-docx 修改舊 word 文件
回顧:開啟舊文件,並另存為新文件
我們這裡就拿上一節生成的學生成績報告作為示例:
讀取word文件的內容
示例程式碼:
效果如下:
讀取docx中表格內容
示例程式碼:
效果如下:
修改word中的內容
示例程式碼:
效果如下:
docx-mailmerge 自動生成萬份勞動合同
建立合同模板
新增內容框架
建立一個域
設定域名
依次全部新增
生成1份證明
示例程式碼:
效果如下:
哈哈哈哈!!月入10萬,走向人生巔峰~
生成10000份證明
示例程式碼:
效果如下:
只花了89秒,平均不到 0。01 就能生成一個!!快
作者:超級大洋蔥806