Word自动化实战:自动生成培训记录模板
点击上方 蓝字关注我吧!
经过前面两个篇章的内容后,相信大家已经具备编写对复杂Word文档进行控制的代码了,下面让我们尝试编写一个Word培训记录模板吧!
培训记录文档通常有如下5个部分:
-
培训主题/时间/主题/讲师; -
培训内容; -
参与培训人员签到表格; -
培训现场图片; -
总结。
1 创建培训基本信息
(1)首先,导入需要的模块,这些模块在本章中都已经介绍并使用过,参考代码如下:
from docx import Documentfrom docx.shared import Inches, Ptfrom docx.enum.text import WD_ALIGN_PARAGRAPHimport iofrom docx.oxml.ns import qn
(2)创建Word文档,并设置文档中内容的字体和字体大小,参考代码如下:
# 创建一个新的word文档doc = Document()# 设置文档的字体和字号doc.styles['Normal'].font.name = '宋体'doc.styles['Normal'].font.size = Pt(12)doc.styles['Normal']._element.rPr.rFonts.set(qn('w:eastAsia'), u'宋体')
(3)创建一个1行4列的表格,分别填入“培训主题”和“培训时间”信息,参考代码如下:
basic_info_table = doc.add_table(rows=1, cols=4)basic_info_table.style = 'Table Grid'basic_info_cells = basic_info_table.rows[0].cellsbasic_info_cells[0].text = '培训主题:'basic_info_cells[1].text = 'XXXX培训'basic_info_cells[2].text = '培训时间:'basic_info_cells[3].text = 'XXXX年XX月XX日XX时-XX时'
(4)再创建一个1行4列的表格,分别填入“培训地点”和“培训讲师”的相关信息,参考代码如下:
basic_info_table = doc.add_table(rows=1, cols=4)basic_info_table.style = 'Table Grid'basic_info_cells = basic_info_table.rows[0].cellsbasic_info_cells[0].text = '培训地点:'basic_info_cells[1].text = '公司X楼会议室'basic_info_cells[2].text = '培训讲师:'basic_info_cells[3].text = '张XX,XX认证专员'
2 添加培训内容
创建一、二级标题并加入培训内容说明,包括“理论知识讲解”“案例分析”“实践操作环节”,参考代码如下:
doc.add_heading('二、培训内容',level=1)doc.add_heading('1. 理论知识讲解',level=2)theory_paragraph = doc.add_paragraph('内容略......')doc.add_heading('2. 案例分析',level=2)theory_paragraph = doc.add_paragraph('内容略......')doc.add_heading('3. 实践操作环节',level=2)theory_paragraph = doc.add_paragraph('内容略......')
3 生成参与培训人员签到表格
添加一个培训签到表格,表头包括“序号”“姓名”“部门”“签到时间”,创建4列多行的表格,参考代码如下:
doc.add_heading('三、培训人员签到表',level=1)basic_info_table = doc.add_table(rows=6, cols=4)basic_info_table.style = 'Table Grid'basic_info_cells = basic_info_table.rows[0].cellsbasic_info_cells[0].text = '序号:'basic_info_cells[1].text = '姓名:'basic_info_cells[2].text = '部门:'basic_info_cells[3].text = '签到时间:'
4 插入培训现场图片
现假设有两张培训图片需要插入文档,这两张图片分别如图所示。


使用代码在Word文档中插入多张图片,其中路径部分按照图片具体存放位置修改,参考代码如下:
doc.add_heading('四、现场照片',level=1)pic_paragraph = doc.add_paragraph()pic_paragraph.add_run().add_picture('E:\CODE\Ai+python效率\会议1.jpg', width=Inches(2.5))pic_paragraph.add_run().add_picture('E:\CODE\Ai+python效率\会议2.jpg', width=Inches(2.5))
5 添加总结
添加培训的总结内容,参考代码如下:
doc.add_heading('五、总结',level=1)summary_paragraph = doc.add_paragraph('本次培训内容丰富,形式多样,通过本次培训,使大家掌握了一些新的知识和技能,为今后的工作打下了坚实的基础。')summary_paragraph.add_run('略......')
最后保存文档,参考代码如下:
doc.save('培训记录模板.docx')
合并上述代码并执行后,将生成培训模板的Word文档。打开该文档,即可查看已生成的模板。该模板中的具体内容如图所示。


下期更新:操作Excel常用的Python库
夜雨聆风