栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

【二】如何用Python创建一个docx文档

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【二】如何用Python创建一个docx文档

章节目标:使用python创建一个文档,并向其中插入文字,图片,表格
开发环境:Python 3.9
IDE:pycharm

(一)首先,你需要pip一个python-docx库

在pycharm中pip包的具体方式已经在专栏的前一篇中说过啦,小白选手可以去看一下:
【一】为什么有时候在cmd里pip的包,pycharm里面找不到?

安装好这个包之后,新建.py文件。
需要记住两件事:
1)你要导入的图片路径;
2)你想把创建的docx文件输出到哪里。

以下是官方docx的说明代码,本文将对其进行小白模式的讲解(自我学习笔记):

from docx import document
from docx.shared import Inches

document = document()

#添加标题,并设置级别,范围:0 至 9,默认为1
document.add_heading('document Title', 0)

#添加段落,文本可以包含制表符(t)、换行符(n)或回车符(r)等
p = document.add_paragraph('A plain paragraph having some ')
#在段落后面追加文本,并可设置样式
p.add_run('bold').bold = True
p.add_run(' and some ')
p.add_run('italic.').italic = True

document.add_heading('Heading, level 1', level=1)
document.add_paragraph('Intense quote', style='Intense Quote')

#添加项目列表(前面一个小圆点)
document.add_paragraph(
    'first item in unordered list', style='List Bullet'
)
document.add_paragraph('second item in unordered list', style='List Bullet')

#添加项目列表(前面数字)
document.add_paragraph('first item in ordered list', style='List Number')
document.add_paragraph('second item in ordered list', style='List Number')

#添加图片
document.add_picture('D:pic1.jpg', width=Inches(1.25))

records = (
    (3, '101', 'Spam'),
    (7, '422', 'Eggs'),
    (4, '631', 'Spam, spam, eggs, and spam')
)

#添加表格:一行三列
# 表格样式参数可选:
# Normal Table
# Table Grid
# Light Shading、 Light Shading Accent 1 至 Light Shading Accent 6
# Light List、Light List Accent 1 至 Light List Accent 6
# Light Grid、Light Grid Accent 1 至 Light Grid Accent 6
# 太多了其它省略...
table = document.add_table(rows=1, cols=3, style='Light Shading Accent 2')
#获取第一行的单元格列表
hdr_cells = table.rows[0].cells
#下面三行设置上面第一行的三个单元格的文本值
hdr_cells[0].text = 'Qty'
hdr_cells[1].text = 'Id'
hdr_cells[2].text = 'Desc'
for qty, id, desc in records:
    #表格添加行,并返回行所在的单元格列表
    row_cells = table.add_row().cells
    row_cells[0].text = str(qty)
    row_cells[1].text = id
    row_cells[2].text = desc

document.add_page_break()

#保存.docx文档
document.save('D:demo.docx')

其输出结果(文档)如图所示:

1.1 如果你想快速运行一下这个代码,那么有两个地方需要改。

1.添加图片部分,需要将第一个参数改为自己电脑上图片的位置。

#添加图片
document.add_picture('D:pic1.jpg', width=Inches(1.25))

2.存储文档地址部分,需要将第一个参数改为你想要将文档存储在的位置。

#保存.docx文档
document.save('D:demo.docx')
(二)代码详解

其实也没啥详解的,注释都写得很清楚。对照文档效果就可以很清晰地知道每个函数是怎么用的了。

如果嫌不够详细,直接带着关键词进CSDN。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/444643.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号