python docx的使用

1.安装
pip install Python-docx

2.docx操作实例代码

from docx import Document
from docx.shared import Pt
from docx.oxml.ns import qn
from docx.shared import RGBColor
from docx.shared import Inches
class doc:
          def __init__(self):
                    #建立文档
                    self.Doc = Document()
                    # 设置字体
                    self.Doc.styles['Normal'].font.name = u'宋体'
                    self.Doc.styles['Normal']._element.rPr.rFonts.set(qn('w:eastAsia'), u'宋体')

                    pass


          def getdoc(self):
                    # 添加标题
                    self.Doc.add_heading()
                    # 添加文本
                    s = self.Doc.add_paragraph()
                    f = s.add_run('python 写word文档')
                    # 添加文本设置字体大小
                    f.font.size=Pt(20)
                    # 加粗
                    f.bold = True
                    # 设置 0 居左 1 居中 2 居右
                    s.alignment = 1
                    # 设置字体颜色
                    f.font.color.rgb = RGBColor(0, 0, 0)


                    t=self.Doc.add_heading(level=1)
                    g =t.add_run('1、表格设置')
                    g.font.color.rgb = RGBColor(0, 0, 0)

                    rows_num = 5
                    cols_num = 6
                    table = self.Doc.add_table(rows=rows_num, cols=cols_num, style='Table Grid')

                    for r in range(rows_num):
                              for c in range(cols_num):
                                        table.cell(r, c).text = "{r}*{c}={d}".format(r=r+1, c=c+1,d=(r+1)*(1+c))

                    # 创建 有序列表
                    self.Doc.add_paragraph('').add_run('有序列表').font.size = Pt(30)
                    self.Doc.add_paragraph('把冰箱门打开', style='List Number')
                    self.Doc.add_paragraph('把大象装进去', style='List Number')
                    self.Doc.add_paragraph('把冰箱门关上', style='List Number')

                    # 创建 无序列表
                    self.Doc.add_paragraph('').add_run('无序列表').font.size = Pt(30)
                    self.Doc.add_paragraph('天地匆匆 惊鸿而过 路有千百个', style='List Bullet')
                    self.Doc.add_paragraph('遑遑无归 闲云逸鹤 人间红尘过', style='List Bullet')
                    self.Doc.add_paragraph('引势而流 鸿门乱局 各有各选择', style='List Bullet')
                    self.Doc.add_paragraph('乾震坎艮 坤巽离兑 定一切生克', style='List Bullet')
                    # 添加分页
                    self.Doc.add_page_break()
                    # 添加图片
                    self.Doc.add_paragraph('').add_run('添加图片').font.size = Pt(30)
                    self.Doc.add_picture('r.jpg', width=Inches(5),height=Inches(2))
                    # 生成文件
                    self.Doc.save("Python.docx")
                    pass

if __name__ =='__main__':
         doc().getdoc()

评论

刷新

友情链接