超简单Python将指定数据插入到docx模板渲染并生成
最近有一个需求,制作劳动合同表,要从excel表格中将每个人的数据导入到docx劳动合同中,重复量很大,因此可以使用python高效解决。为了让模板内容不变动,这里使用了类似jinja2的渲染引擎,使用{{ }}插值表达式把数据插入进去。也可以使用{% %}循环,条件语法等。
docx模板如下(在需要插值的位置填充 {{}} 表达式):
相关推荐:《Python视频教程》
首先安装docxtpl
$pipinstalldocxtpl
python代码如下:
fromdocxtplimportDocxTemplate tpl=DocxTemplate('劳动合同.docx') #这些字段从csv中获取 context={ "name":name, "department":department, "position":position, "time":time, "id":id_card, "addr":addr, } tpl.render(context) tpl.save("{}的劳动合同.docx".format(name))