python写word模板_Python3操作Office之Word模板技术
在平時(shí)工作當(dāng)中,經(jīng)常會(huì)遇到大部分文字固定不變,小部分內(nèi)容修改的相關(guān)文檔。如放假通知、工作日志、工作周報(bào)、合同等。
以往都要打開(kāi),修改,保存,猶如機(jī)械一般的操作,如內(nèi)容少還可勉強(qiáng)接受,倘若內(nèi)容多時(shí),反復(fù)瀏覽,未免有些頭暈?zāi)垦!?/p>
不過(guò),現(xiàn)在好了,有很多工具可以實(shí)現(xiàn):無(wú)需打開(kāi)文檔,只需在軟件界面,輸入要變更的內(nèi)容便可,這就要用到所謂的模板技術(shù)了。
1
在Python編程語(yǔ)言當(dāng)中,操作Word模板,需要用到python-docx-template開(kāi)發(fā)包。廢話不多說(shuō),打開(kāi)命令行窗口,輸入:pip install docxtpl命令,下載開(kāi)發(fā)包。
2
有了開(kāi)發(fā)包,咱就可以做下模板內(nèi)容修改的試驗(yàn)了。首先創(chuàng)建一個(gè)模板文件:leave_temp.docx并把:“{% who %}的請(qǐng)假申請(qǐng)單“這個(gè)內(nèi)容拷貝到Word文檔里。?接下來(lái),咱就編寫代碼測(cè)試一下。
from docxtpl import DocxTemplate
tpl = DocxTemplate('leave_temp.docx')
#?需要替換內(nèi)容以key:value的方式進(jìn)行更換
context = {
'who': '程旭陽(yáng)'
}
tpl.render(context)
tpl.save('leave.docx')
3
除了基本的內(nèi)容替換之外,python-docx-template開(kāi)發(fā)包還可對(duì)指定的內(nèi)容特色處理,如更改文本的字體和顏色,如給表格單元格加背景色或合并單元格,還有就是圖片內(nèi)容的替換,再者就是可以把另一個(gè)Word文檔里面提取出來(lái)并插入到本文檔當(dāng)中。
核心的功能大概就這么多了。咱再試下文本顏色和表格單元格背景的調(diào)整。在編寫代碼之前,我提供一個(gè)模板(leave_temp.docx)供你參考,拿走不謝。
4
自從有了模板,腰不痛,手也不酸了,編寫代碼也有了依據(jù),妥妥的。來(lái)了,上代碼。
from docxtpl import DocxTemplate, RichText
tpl = DocxTemplate('leave_temp.docx')
#?需要替換內(nèi)容以key:value的方式進(jìn)行更換
context = {
'year': '2019', 'month': '3', 'day': '8',
'name': '程旭陽(yáng)', 'department': '研發(fā)部',
'reason': '女朋友說(shuō)我好久沒(méi)陪她了,再不陪伴,她就要跟我說(shuō)拜拜了。為愛(ài)走天涯,特請(qǐng)假4天!',
'date': '2019-3-9至2019-3-12',
'num': RichText('4天', color='000000', bold=True), 'bg': 'FF0000'
}
tpl.render(context)
tpl.save('leave.docx')
總結(jié)
以上是生活随笔為你收集整理的python写word模板_Python3操作Office之Word模板技术的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: XCode10 swift4.2 适配遇
- 下一篇: websocket python爬虫_p