办公室小白的求生欲--python-docx 使用初探

现在办公软件五花八门,但是在普通企业内部还是用office比较多。office是微软的一款老牌办公软件,功能多的要命,小规模的工作还行,一旦有大量的数据导入往往让新晋办公室人员头皮发麻。

今天,带大家认识一下python推出的第三方软件报python-docx。

1.安装

使用默认的pip安装或者conda环境安装都可以,作者所在的单位对外网有封锁,所以用的是清华的镜像源。方法此处略过

pip install python-docx

conda install python-docx

2.快速开始

使用最简单的只需要三行代码。引用,实例化,保存。

from docx import Document
document = Document()#创建一个文档,也可以打开一个已经存在的文档
document.save('这是文件名.docx')

3.标题和段落

文档的内容可以在实例化后丰富和添加,docx提供了一个add命令来完成这些。

heading = document.add_heading('啊,这是一个题目')#添加一个标题
heading_2 = document.add_heading('啊,这是一个二级标题',level=2)#添加一个二级标题
paragraph = document.add_paragraph('啊,这是一个例子')#添加一个段落
prior_paragraph = paragraph.insert_paragraph_before('啊,这')#在某处插入一个段落

4.添加表格

docx提供了一个add_table的命令添加表格,同时分设了row和cols信息,然后是cells,内容可以后缀text来添加,结构类似pandas的Dateframe,大家可以借鉴参考一下。

table = document.add_table(rows=2,cols=2)
cell = table.cell(0,1)
cell.text = '啊,这是表格内容'

#将items数据填到一个表格中,标题为 姓名 年龄 职务
items = (
    ('刘康','32','二副'),
    ('柳良伟','36','大副'),
    ('高丽文','38','船长')
)
titles = ['姓名','年龄','职务']

table = document.add_table(rows=1,cols=3)
for i in range(len(titles)):
    table.rows[0].cells[i].text = titles[i]
for item in items:
    cells = table.add_row().cells
    cells[0].text = item[0]
    cells[1].text = item[1]
    cells[1].text = item[1]

5.添加图片

图片可以用add_picture来添加。因图片的特殊性,有image size属性需要注意一下

document.add_picture('我是图片路径')

为了保持图片的可读性,docx在保持比例的前提下Inches和Cm两种简便方法。

from docx.shared import Inches
document.add_picture('我是土木.png', width=Inches(1.0))

6.添加加粗和斜体

docx提供了run的方式来添加粗体和斜体。

run = paragraph.add_run('bold')
run.bold = True
run.italic = True

你可能感兴趣的:(办公室小白的求生欲--python-docx 使用初探)