本文的标题是《一篇就够,python 操作 word 文档,使用 python-docx 落地实现》来源于:由作者:陈春燕采编而成,主要讲述了写在前面python-docx 不支持 doc 文档,一定
写在前方python-docx 不扶助 doc 文档,确定要提防该点,即使运用 doc 文档,须要提早将其用 word 关系软硬件变换为 docx 方法。 doc 和 docx 是生存实质分别的,一个是二进制,另一个 xml 方法的文件。
模块的安置 pip install python-docx 。
以次网址开始筹备好
官方画册:https://python-docx.readthedocs.io/en/latest/index.html
pypi 官方地方:https://pypi.org/project/python-docx/
材料筹备结束,即可加入源代码步骤。
创造一个文档第一个需要,创造一个文档,并在内里写入百般消息。
先实行第一步,写入一个题目
提防下文中的 add_heading() 因变量的用法。
from docx import document
# 创造 document 东西,等价于在电脑上翻开一个 word 文档
document = document()
# 在 word 文档中增添一个题目
document.add_heading('这是一个题目',level=0)
# 生存文档
document.save('demo.docx')
增添文字段落提防下文中 add_paragraph() 因变量增添段落,运用 add_run() 追加文本
from docx import document
# 创造 document 东西,等价于在电脑上翻开一个 word 文档
document = document()
# 在 word 文档中增添一个题目
document.add_heading('这是一个题目', level=0)
# 文档增添段落
p = document.add_paragraph('这是白给的段落')
# 增添带款式的文字
# 增添段落,文本不妨包括构图符(t)、换行符(n)或回车符(r)等
# add_run() 在段掉队面追加文本
p.add_run('n我歪斜了').italic = true # 增添一个歪斜文字
p.add_run('n我加粗了').bold = true # 增添一个加粗文字
# 生存文档
document.save('demo.docx')
在段落前方减少文字
p.add_run('n我歪斜了').italic = true # 增添一个歪斜文字
p.add_run('n我加粗了').bold = true # 增添一个加粗文字
# 段落前方插入实质
prep_p = p.insert_paragraph_before('段落之前插入实质')
段落还不妨增添分页符,代码如次所示:
# 段落前方插入实质
prep_p = p.insert_paragraph_before('段落之前插入实质')
document.add_page_break()
p1 = document.add_paragraph('新页新段落')
列表的增添无序列表的增添
# 增添列表(前方一个小圆点)
document.add_paragraph('我前方是小圆点', style='list bullet')
# 增添列表(前方一个小圆点)
document.add_paragraph('第二个小圆点', style='list bullet')
无序列表的增添
# 增添列表(前方数字)
document.add_paragraph('我前方是数字', style='list number')
# 增添列表(前方数字)
document.add_paragraph('第二个数字', style='list number')
图片的增添document 东西完备的本领如次所示:
add_heading(self, text='', level=1):增添题目;add_page_break(self):分页符;add_paragraph(self, text='', style=none):增添段落;add_picture(self, image_path_or_stream, width=none, height=none):增添图片;add_section(self, start_type=2):增添节;add_table(self, rows, cols, style=none):增添表格;本局部中心进修 add_picture() 本领。
document.add_picture(r"../9.png", width=inches(1))add_picture() 因变量中参数 image_path_or_stream 不妨为对立地方大概一致地方,也不妨是一个图片数据流,上述代码中 inches 表白英尺,除此除外, python-docx 还供给了厘米 (cm) ,如树立 1厘米: cm(1) ,运用的功夫须要提先导入 from docx.shared import inches, cm 。
表格增添运用 add_table() 因变量,不妨在 word 文档中增添表格。
p1 = document.add_paragraph('新页新段落')
# 增添一个 2×2 表格
table = document.add_table(rows=2, cols=2)
# 获得第1行第2列单位格
cell = table.cell(0, 1)
# 树立单位格文本
cell.text = '第1行第2列'
# 获得第2行
row = table.rows[1]
row.cells[0].text = '橡皮擦'
row.cells[1].text = '乔喻'
进修的功夫提防一下关系解释,即可控制该局部实质。
关系款式树立树立方法须要用 add_run() ,径直运用 add_paragraph() 天生的段落不许径直树立字体等款式。
# 模块的导出
from docx.shared import pt, cm, inches
from docx.oxml.ns import qn
from docx.enum.text import wd_align_paragraph
from docx.shared import rgbcolor
# 头等题目 level=0
head0 = document.add_heading(level=0)
# 题目居中
head0.alignment = wd_align_paragraph.center
title_run = head0.add_run('这是一个居中的题目', )
title_run.font.size = pt(24)
# 题目英文字体
title_run.font.name = 'times new roman'
# 题目中文字体
title_run.element.rpr.rfonts.set(qn('w:eastasia'), '微软雅黑')
# 字体脸色
title_run.font.color.rgb = rgbcolor(4, 60, 169)
个中 wd_align_paragraph 东西表白段落对其的办法,其值囊括如次实质
wd_align_paragraph. left:左对齐;wd_align_paragraph. center:居中对其;wd_align_paragraph. right:右对齐;wd_align_paragraph. justify:两头对齐;螺距,段间距
line_spacing 属性用来树立螺距, space_before 表白段前距, space_after 表白段后距。
斜体,下划线,粗体树立
font.italic = true #树立斜体
font.underline = true #树立下划线
font.bold = true #树立粗体
首行缩进
paragraph_format_line_indent 不妨树立缩进值。
其它树立
除去上述实质外,还不妨经过 document.styles.add_style('textstyle', wd_style_type. paragraph) ,运用 add_style() 本领创造新的款式东西,后续就不妨经过供给的属性举行款式树立,树立字体运用 font.size ,树立字体脸色为 font.color 。
而后在增添段落的功夫,就不妨运用该属性了。
from docx.shared import rgbcolor
from docx.enum.style import wd_style_type
style = document.styles.add_style('textstyle', wd_style_type.paragraph)
# 字体巨细
style.font.size = pt(16)
# 字体脸色
style.font.color.rgb = rgbcolor(66, 100, 0)
p1 = document.add_paragraph('超人橡皮擦',style=style)
页眉和页脚页眉和页脚不妨径直树立,参考代码如次所示
header = document.sections[0].header
header.add_paragraph('橡皮擦的页眉')页脚树立
footer = document.sections[0].footer————————————————
作家:理想橡皮擦
原文链接:https://blog.csdn.net/hihell/article/details/121966945
正文原作家为陈春燕,连载请证明:根源!如该文有不当之处,请接洽站长简略,感谢协作~
原创文章,作者:陈春燕,如若转载,请注明出处:http://www.kaicen.cn/20220416283170.html