zoukankan      html  css  js  c++  java
  • Python之word文档替换字符串(也可以用于短模板套用)

    Python之word文档替换字符串(也可以用于短模板套用),代码如下:

     1 '''
     2     #word模板套用1:创建模板,适合比较短的文档
     3 '''
     4 
     5 #导入所需库
     6 from docx import Document
     7 from docx.enum.text import WD_PARAGRAPH_ALIGNMENT
     8 from docx.shared import Pt
     9 from docx.oxml.ns import qn
    10 
    11 #开始创建文档
    12 document = Document()
    13 #设置文档的初始字体
    14 document.styles['Normal'].font.name = '黑体'
    15 #设置文档的中文初始字体
    16 document.styles['Normal']._element.rPr.rFonts.set(qn('w:eastAsia'),u'黑体')
    17 
    18 #创建函数来批量添加内容
    19 def add_context(context):
    20     #函数体开始
    21     #新建段落
    22     p = document.add_paragraph()
    23     #设置段落对齐格式
    24     p.alignment = WD_PARAGRAPH_ALIGNMENT.CENTER
    25     #向段落添加内容
    26     r = p.add_run(str(context))
    27     #因为文档的样式在代码开始的时候就设置了,这里只设置字体段落文字的字体大小就好了,有需要可以添加
    28     r.font.size = Pt(16)
    29     #设置段前段后距离
    30     p.space_after = Pt(5)
    31     p.space_before = Pt(5)
    32 #指定好要替换的内容
    33 change = '哈士奇'
    34 #开始添加内容
    35 add_context('汉皇重色思倾国,御宇多年求不得。杨家有%s初长成,养在深闺人未识。' % change) #将'女'替换成‘哈士奇'
    36 add_context('天生丽质难自弃,一朝选在君王侧。回眸一笑百媚生,六宫粉黛无颜色。')
    37 add_context('春寒赐浴华清池,温泉水滑洗凝脂。侍儿扶起娇无力,始是新承恩泽时。')
    38 add_context('云鬓花颜金步摇,芙蓉帐暖度春宵。春宵苦短日高起,从此君王不早朝。')
    39 add_context('承欢侍宴无闲暇,春从春游夜专夜。后宫佳丽三千人,三千宠爱在一身。')
    40 add_context('金屋妆成娇侍夜,玉楼宴罢醉和春。姊妹弟兄皆列土,可怜光彩生门户。')
    41 add_context('遂令天下父母心,不重生男重生%s。骊宫高处入青云,仙乐风飘处处闻。' % change) #将'女'替换成‘哈士奇'
    42 add_context('缓歌慢舞凝丝竹,尽日君王看不足。渔阳鼙鼓动地来,惊破霓裳羽衣曲。')
    43 
    44 #保存文档
    45 document.save('D:/路径/替换%s操作展示.docx' % (change))

    上面是单一替换,下面替换多个:

     1 '''
     2     #word模板套用1:创建模板,适合比较短的文档
     3 '''
     4 
     5 #导入所需库
     6 from docx import Document
     7 from docx.enum.text import WD_PARAGRAPH_ALIGNMENT
     8 from docx.shared import Pt
     9 from docx.oxml.ns import qn
    10 
    11 #创建一个要替换的列表
    12 dog_list = ['哈士奇','阿拉斯加','萨摩']
    13 #开始循环列表
    14 for change in dog_list:
    15     #开始创建文档
    16     document = Document()
    17     #设置文档的初始字体
    18     document.styles['Normal'].font.name = '黑体'
    19     #设置文档的中文初始字体
    20     document.styles['Normal']._element.rPr.rFonts.set(qn('w:eastAsia'),u'黑体')
    21 
    22     #创建函数来批量添加内容
    23     def add_context(context):
    24         #函数体开始
    25         #新建段落
    26         p = document.add_paragraph()
    27         #设置段落对齐格式
    28         p.alignment = WD_PARAGRAPH_ALIGNMENT.CENTER
    29         #向段落添加内容
    30         r = p.add_run(str(context))
    31         #因为文档的样式在代码开始的时候就设置了,这里只设置字体段落文字的字体大小就好了,有需要可以添加
    32         r.font.size = Pt(16)
    33         #设置段前段后距离
    34         p.space_after = Pt(5)
    35         p.space_before = Pt(5)
    36    
    37     #开始添加内容
    38     add_context('汉皇重色思倾国,御宇多年求不得。杨家有%s初长成,养在深闺人未识。' % change) #将'女'替换成‘哈士奇'
    39     add_context('天生丽质难自弃,一朝选在君王侧。回眸一笑百媚生,六宫粉黛无颜色。')
    40     add_context('春寒赐浴华清池,温泉水滑洗凝脂。侍儿扶起娇无力,始是新承恩泽时。')
    41     add_context('云鬓花颜金步摇,芙蓉帐暖度春宵。春宵苦短日高起,从此君王不早朝。')
    42     add_context('承欢侍宴无闲暇,春从春游夜专夜。后宫佳丽三千人,三千宠爱在一身。')
    43     add_context('金屋妆成娇侍夜,玉楼宴罢醉和春。姊妹弟兄皆列土,可怜光彩生门户。')
    44     add_context('遂令天下父母心,不重生男重生%s。骊宫高处入青云,仙乐风飘处处闻。' % change) #将'女'替换成‘哈士奇'
    45     add_context('缓歌慢舞凝丝竹,尽日君王看不足。渔阳鼙鼓动地来,惊破霓裳羽衣曲。')
    46 
    47     #保存文档
    48     document.save('D:/路径/替换%s操作展示.docx' % (change))
  • 相关阅读:
    2017年校招全国统一模拟笔试 01翻转
    第二周总结
    数组的最大子数组求和问题
    第一周总结
    HTML与CSS学习
    关于家庭小账本软件的设计一
    从小工到专家读后感
    从小工到专家读后感
    从小工到专家读后感
    动手动脑
  • 原文地址:https://www.cnblogs.com/mafu/p/13971655.html
Copyright © 2011-2022 走看看