利用python-docx模块写批量生日邀请函

yipeiwu_com5年前Python基础

利用python-docx模块,写批量生日邀请函

有关python-docx的使用方法,可以参考官方的API文档。这里使用了其中的一些基本功能,来完成一个简单的任务:为参加聚会的好友,每人写一个word文档邀请函。邀请函也很简单,如下图:

下面是代码:

import docx
from docx.enum.text import WD_PARAGRAPH_ALIGNMENT #引入文字的位置样式
from docx.shared import Pt #设置字体

#从guest.txt文件中读取一个客人列表
guests=open('guest.txt')
guest_list=[]
for guest in guests:
 if guest is not None:
  guest_list.append(guest.strip())

#生成邀请文档
for g in guest_list:
 doc=docx.Document() #新建word文档

 #第一段
 paragraph1=doc.add_paragraph('Welcome To My Birthday Party')
 paragraph1.paragraph_format.alignment = WD_PARAGRAPH_ALIGNMENT.CENTER
 paragraph1.style='Title'

 #第二段
 paragraph2=doc.add_paragraph()
 paragraph2.paragraph_format.alignment=WD_PARAGRAPH_ALIGNMENT.CENTER
 run=paragraph2.add_run(g) #向段落中追加文字
 run.bold=True #设置追加文字样式
 run.font.size=Pt(30)
 run.style='Emphasis'

 # 第三段
 paragraph3=doc.add_paragraph()
 paragraph3.paragraph_format.alignment = WD_PARAGRAPH_ALIGNMENT.CENTER
 paragraph3.style = 'Normal'
 run=paragraph3.add_run('Tomorrow is my birthay.I am looking forword your coming')
 run.font.size=Pt(20)

 doc.save(g+'.docx')

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python 寻找局部最高点的实现

我就废话不多说了,直接上代码吧! # 寻找局部最高点 # 输入input: 含有最高点高度的列表 # 输出output: 返回最高点的位置 # 时间复杂度: O(log(n)) d...

tensorflow使用range_input_producer多线程读取数据实例

先放关键代码: i = tf.train.range_input_producer(NUM_EXPOCHES, num_epochs=1, shuffle=False).dequeu...

Python读取指定目录下指定后缀文件并保存为docx

最近有个奇葩要求 要项目中的N行代码 申请专利啥的 然后作为程序员当然不能复制粘贴 用代码解决。。 使用python-docx读写docx文件 环境使用python3.6.0 首先pip...

用Python逐行分析文件方法

用于逐行分析文本的代码示例 fileIN = open(sys.argv[1], "r") line = fileIN.readline() while line: [some bi...

python 将日期戳(五位数时间)转换为标准时间

python 将日期戳(五位数时间)转换为标准时间

5位数日期戳 读取 .mat 文件处理里面数据时,发现里面的日期数据全部都是 “5位数” 数字,很不解; 后来查到可以在excel中通过设置单元格调回标准日期格式,如下: 选中日期戳,...