Python|用Python自动化生成Word文档( 二 )


数据完美地填了进去 。
可见 , 在mailmerge模块的作用下 , Python和Word完美地结合在了一起 。 现在我可以将Python程序中的数据直接传递给Word文档 , 而不必再倒表格这一道手了 。
等下 , 这还没完 。 有一种情况会比较棘手 , 就是向Word中的表格插入数据 。 如果你只在表格的一行中插入域的话 , 结果生成的文件就是只有这一行有信息 , 而其他行都是空白 。 但是在mailmerge模块下这个问题得到了解决 。
我们向模板中添加一个表格 , 按照之前的方法给各列插入域:

然后我们在merge方法中设定新的关键字参数:

因为表格的行里有“内容”域 , 所以我们只要在设定关键字参数时设定这个域 , 程序就能认定我们是在设定这个行 。 换言之如果设定“地点”域或“时长”域也都是可以的 , 关键在于参数值的设定 。
我们可以看到参数的值是一个列表 , 而列表里的元素都是字典 。 这个结构意味着每个字典都代表了一行的数据 。 字典里的键就是这一行里的域名 , 值就是要填入域的内容 。
我们再打开新的文件看一看:

不多不少 , 正正好好四行数据 。
这一期我们了解了如何使用mailmerge模块去将Python和Word结合到一起 , 利用Python自动化生成Word文档 。 虽然例子里的文档非常简单 , 但配合上Python的各种强大功能 , 可以满足非常多方面的应用 。 室长在工作中就编写了一个自动生成实验任务单的程序 , 布置任务轻松愉快 。 希望这两期的教程能够帮你提高工作效率 , 领先别人一大步 。 如果这篇文章对你有所帮助 , 希望能帮室长点个赞和在看 , 你的鼓励是室长进步的动力!