前言:开会用的桌牌,制作起来非常麻烦,要根据参会人员的不同,制作不同的桌牌。如果参会人员非常多,制作就变的更麻烦。通过python中的xlrd和docxtpl模块可以自动的快速生成桌牌
前言:开会用的桌牌,制作起来非常麻烦,要根据参会人员的不同,制作不同的桌牌。如果参会人员非常多,制作就变的更麻烦。通过python中的xlrd和docxtpl模块可以自动的快速生成桌牌,省时省力。
本例也是第一次实现自动化办公方面的例子。
先看效果:
1、word模板
2、人员名单
3、自动生成的文件
原码文件:
# pip install xlrd 操作excel模块的工具import xlrd# 安装word第三方模块 pip install docxtpl 操作word模块的工具import docxtpl# 打开excelfrom docxtpl import DocxTemplateexcel = xlrd.open_workbook("08-桌牌/08-桌牌.xlsx")# 选择工作薄-选择第一个sheet = excel.sheets()[0]# 获取工作薄有多少数据# print(sheet.nrows)# print(sheet.cell_value(1, 2))names = []teams = []for i in range(sheet.nrows-1): names.append(sheet.cell_value(i+1, 1)) teams.append(sheet.cell_value(i+1, 2))# print(names, teams)for name,team in zip(names, teams): # print(name, '---', team) #打开模板 doc = DocxTemplate('08-桌牌/08-桌牌.docx') #设置内容对应关系 context = {'name':name, 'team':team} #填充内容 doc.render(context) #保存新的文件 doc.save(f'08-桌牌/{name}.docx') #提示信息 print(f"{name}的word-生成完毕")