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

yipeiwu_com7年前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多线程实现代码(模拟银行服务操作流程)

python多线程实现代码(模拟银行服务操作流程)

1.模拟银行服务完成程序代码 目前,在以银行营业大厅为代表的窗口行业中大量使用排队(叫号)系统,该系统完全模拟了人群排队全过程,通过取票进队、排队等待、叫号服务等功能,代替了人们站队的辛...

解决py2exe打包后,总是多显示一个DOS黑色窗口的问题

setup.py: #!/usr/bin/env python # coding=utf-8 from distutils.core import setup import py2e...

详解用Python为直方图绘制拟合曲线的两种方法

详解用Python为直方图绘制拟合曲线的两种方法

直方图是用于展示数据的分组分布状态的一种图形,用矩形的宽度和高度表示频数分布,通过直方图,用户可以很直观的看出数据分布的形状、中心位置以及数据的离散程度等。 在python中一般采用m...

Python Pandas 获取列匹配特定值的行的索引问题

Python Pandas 获取列匹配特定值的行的索引问题

给定一个带有列"BoolCol"的DataFrame,如何找到满足条件"BoolCol" == True的DataFrame的索引 目前有迭代的方式来做到这一点: for i in...

Python机器学习logistic回归代码解析

Python机器学习logistic回归代码解析

本文主要研究的是Python机器学习logistic回归的相关内容,同时介绍了一些机器学习中的概念,具体如下。 Logistic回归的主要目的:寻找一个非线性函数sigmod最佳的拟合参...