運用Python巧妙處理Word文檔的方法詳解
工具
python3.7
Pycharm
Excel
python-docx
生成Word案例
創(chuàng)建一個demo.doc文檔,代碼如下:
from docx import Document
from docx.shared import Cm,Pt
from docx.document import Document as Doc
#構(gòu)建doc對象
document = Document()
#操作文檔標(biāo)題
document.add_heading('這是python寫的!',0)
#操作段落文本
p = document.add_paragraph('我喜歡python,因為python可以做許多事情...')
#段落添加內(nèi)容
run = p.add_run('大家也可以來學(xué)習(xí)!')
#對run內(nèi)容加粗
run.bold = True
#設(shè)置run字體
run.font.size = Pt(18)
#標(biāo)題級別設(shè)置
document.add_heading('我是一級標(biāo)題',level=1)
#操作圖片(圖片所在路徑)
document.add_picture('劉亦菲.png', width=Cm(5.2))
# 添加有序列表
document.add_paragraph(
'我是有序列表1', style='List Number'
)
document.add_paragraph(
'我是有序列表1', style='List Number'
)
# 添加無序列表
document.add_paragraph(
'我是無序列表1', style='List Bullet'
)
document.add_paragraph(
'我是無序列表2', style='List Bullet'
)
# 設(shè)置表格內(nèi)容
records = (
('孫悟空', '男', '1111-1-1'),
('白骨精', '女', '2222-2-2')
)
# 添加表格,rows設(shè)置行 cols設(shè)置列
table = document.add_table(rows=1, cols=3)
hdr_cells = table.rows[0].cells
#設(shè)置列名
hdr_cells[0].text = '姓名'
hdr_cells[1].text = '性別'
hdr_cells[2].text = '出生日期'
# 操作寫入行
for name, sex, birthday in records:
row_cells = table.add_row().cells
row_cells[0].text = name
row_cells[1].text = sex
row_cells[2].text = birthday
#保存doc文檔
document.save('demo.docx')效果如下:

更多屬性設(shè)置可以參考官方文檔
讀取操作word文檔
現(xiàn)有文檔如下:

讀取代碼:
from docx import Document
from docx.document import Document as Doc
#獲取文檔路徑,循環(huán)讀取內(nèi)容
doc = Document('離職證明.docx') # type: Doc
for no, p in enumerate(doc.paragraphs):
print(no, p.text)
效果如下:

如果需要批量操作,則可以使用字典形式組織數(shù)據(jù)類型,比如name,start_time,end_time,job等,再使用循環(huán)寫入文件即可批量生成該類文檔。
總結(jié)
當(dāng)需要批量操作文檔時候,可以使用python-docx庫來操作,可以較大提升工作效率。如果需要更多屬性操作,請參考上面官方文檔。
到此這篇關(guān)于運用Python巧妙處理Word文檔的方法詳解的文章就介紹到這了,更多相關(guān)Python處理Word內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Pycharm使用Conda激活環(huán)境失敗的問題解決
本文主要介紹了Pycharm使用Conda激活環(huán)境失敗的問題解決,文中主要介紹了兩種問題的解決,具有一定的參考價值,感興趣的可以了解一下2023-09-09
淺談Selenium+Webdriver 常用的元素定位方式
這篇文章主要介紹了淺談Selenium+Webdriver 常用的元素定位方式,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-01-01
python基礎(chǔ)之函數(shù)的定義和調(diào)用
這篇文章主要介紹了python函數(shù)的定義和調(diào)用,實例分析了Python中返回一個返回值與多個返回值的方法,需要的朋友可以參考下2021-10-10
pandas創(chuàng)建DataFrame的方式小結(jié)
今天給大家整理了pandas創(chuàng)建DataFrame的方式小結(jié),現(xiàn)在我們就來看看這三種生成Dataframe的方式,每種方式通過實例代碼給大家介紹的非常詳細(xì),需要的朋友參考下吧2021-09-09

