docx 库
文章结构:
一、docx 基本用,创建 docx 文件并添加数据
二、深入理解文本格式(format),并设置所格式属性(attribute)
三、深入理解样式(styles),以及如何运用样式
四、常用样式(style)示例
一、docx基本用法,创建docx 文件并添加数据
官方文档:https://python-docx.readthedocs.org/en/latest/
docx 可以操作 doxc 格式文件
linux 安装 sudo pip install python_docx (不要安装错了,python_docx 是新版本,如果只是安装 docx 有些 API 会不匹配)
windows 安装 pip install python_docx
基本用法:
1 #!/usr/bin/env python
2 #coding: utf-8
3
4 from docx importDocument5 from docx.shared importInches6
7 #创建 Document 对象,相当于打开一个 word 文档
8 document =Document()9
10 #向文档中添加一个标题,标题级别设置为0级
11 document.add_heading('This is title', level=0)12
13 #向文档中添加一个段落,并将段落引用赋给变量 p
14 #使用 add_run 方法追加字段,并设置格式
15 p = document.add_paragraph('This is paragraph')16 p.add_run('bold').bold =True17 p.add_run('and some')18 p.add_run('italic.').italic =True19
20 #添加标题和段落,采用不同的形式
21 document.add_heading('This is Heading, level 1', level=1)22 document.add_paragraph('Intese quote',style="Intense Quote")23 document.add_paragraph('first item in unordered list', style='List Bullet')24 document.add_paragraph('first item in ordered list', style='List Number')25
26 #添加图片,设置图片大小
27 document.add_picture(r"D:\picture\a.jpg", width=Inches(2.25))28
29 #添加表格,填入表格内容
30 table = document.add_table(rows=2, cols=2)31 table.cell(0,0).text = "cell_00"
32 table.cell(0,1).text = "cell_01"
33 table.cell(1,0).text = "cell_10"
34 table.cell(1,1).text = "cell_11"
35
36 #保存文本
37 document.save('demo.docx')
效果展示:
二、深入理解文本格式(format),并设置所格式属性(attribute)
根据官方文档所述,word 中主要有两种用文本格式等级:块等级(block-level)和内联等级(inline-level)
word 中大部分内容都是由这两种等级的对象组成的
(其他的诸如眉页、引脚等,docx 库的作者还在开发中)
块等级(block-level):
段落是 word 文件中的主要块对象(block-level object)
块等级项(block-level item)主要任务是将文本格式从左边界向右边界展示(flows);\
对于段落而言,边界就是分段标识,或者是文本的列边界
列表(table)也是块对象(block-l