使用python-docx-template (docxtpl)时,可以通过遍历列表或字典来填充Word文档的模板。
对于列表,可以使用for
循环遍历每个元素,并使用render()
方法渲染模板,然后将渲染结果添加到Word文档中。示例代码如下:
from docxtpl import DocxTemplate
# 加载模板文件
doc = DocxTemplate("template.docx")
# 定义要填充的数据
context = {
'students': [
{'name': '张三', 'age': 18},
{'name': '李四', 'age': 20},
{'name': '王五', 'age': 22}
]
}
# 遍历列表并填充数据
for student in context['students']:
doc.render(student)
doc.add_page_break() # 添加分页符
# 保存填充后的文档
doc.save("output.docx")
对于字典,可以使用render()
方法直接渲染整个字典对象,然后将渲染结果添加到Word文档中。示例代码如下:
from docxtpl import DocxTemplate
# 加载模板文件
doc = DocxTemplate("template.docx")
# 定义要填充的数据
context = {
'name': '张三',
'age': 18
}
# 渲染字典并填充数据
doc.render(context)
# 保存填充后的文档
doc.save("output.docx")
使用python-docx-template (docxtpl)可以方便地根据模板生成带有动态数据的Word文档。这在生成报告、合同、简历等需要批量填充数据的场景中非常有用。
推荐的腾讯云相关产品:腾讯云对象存储(COS),它提供了高可靠性、低成本、安全可靠的云存储服务,适用于存储和管理各种类型的非结构化数据。您可以通过以下链接了解更多信息:
请注意,以上答案仅供参考,具体实现方式可能因个人需求和场景的不同而有所变化。
领取专属 10元无门槛券
手把手带您无忧上云