Python学习的自我理解和想法(25)

简介: 这是一篇关于Python操作Word文档(docx)的教程总结,基于B站千锋教育课程学习(非原创代码)。主要内容包括:1) docx库插件安装;2) 创建与编辑Word文档,如添加标题、段落、设置字体样式及保存;3) 向新或现有Word文档插入图片。通过简单示例展示了如何高效使用python-docx库完成文档操作。因开学时间有限,内容精简,后续将更新列表和表格相关内容。欢迎指正交流!

学的是b站的课程(千锋教育),跟老师写程序,不是自创的代码!
今天是学Python的第25天,学的内容是python对docx的操作。开学了,时间不多,写得不多,见谅。
目录
1.插件安装
2.写一个word文档
(1).创建一个新的 Word 文档
(2).添加标题
(3).添加段落
(4).字体加粗
(5).设置字体大小
(6).设置下划线
(7).保存文档
(8).示例
(9).结果
(10).注意
3.向新word文件中插入图片
(1).创建word对象
(2).向文档中插入图片
(3).保存
(4).示例
(5).结果
4.向现有的word插入图片
(1).打开一个现有的word文档
(2).插入图片
(3).保存文档
(4).示例
(5).结果
总结


1.插件安装

在使用docx库之前,我们需要先安装它。可以通过以下命令使用pip进行安装

pip install python-docx

2.写一个word文档

(1).创建一个新的 Word 文档

语法:docx.Document()

   import docx

   document = docx.Document()

(2).添加标题

可以使用add_heading方法为文档添加标题。标题级别可以通过参数指定,范围从 1 到 9。
语法:document.add_heading(,level=n)

   document.add_heading('这是一级标题', level=1)
   document.add_heading('这是二级标题', level=2)

(3).添加段落

语法:add_paragraph()

   paragraph = document.add_paragraph('这是一个段落内容。')

(4).字体加粗

语法:XX.bold = True,True表示加粗,False表示不加粗

run = p.add_run("非常棒")
run.bold = True

(5).设置字体大小

语法:XX.font.size = Pt(n)

from docx.shared import Pt
run.font.size = Pt(20)

(6).设置下划线

语法:XX.underline = False,是有设置的下划线,True表示设置,False表示不设置

run.underline = False

(7).保存文档

语法:document.save()

document.save('new_document.docx')

(8).示例

from docx import Document
from docx.shared import Pt   # 用于设置字体
from docx.document import Document as Doc

# 创建代表word文档的Document对象
document = Document()
# 添加标题
document.add_heading("快快乐乐学python",level=1)
# 添加段落
p = document.add_paragraph("python是一门目前非常流行的语音")
run = p.add_run("非常棒")
run.bold = True # 字体是否加粗    True表示加粗,False表示不加粗
run.font.size = Pt(20)  # 设置字体大小
run.underline = False  # 是有设置的下划线,True表示设置,False表示不设置
p.add_run("!")

# 保存文档
document.save("../pycharm测试文件/test65附件-快快乐乐学python.docx")

(9).结果

image.png

(10).注意

设置样式时,要通过段落对象的runs属性来设置字体样式。runs是段落中的文本片段,可以单独设置每个片段的字体、颜色、大小等。

   paragraph = document.add_paragraph('这是一个段落内容。')
   run = paragraph.runs[0]
   run.font.name = '宋体'
   run.font.size = docx.shared.Pt(14)
   run.font.bold = True
   run.font.italic = True

3.向新word文件中插入图片

(1).创建word对象

   import docx

   document = docx.Document()

(2).向文档中插入图片

语法:add_picture ,可导入cm来设置图片大小,要插入的图片路径必须存在.

from docx.shared import Cm
document.add_picture('XXX.jpeg',width=Cm(7))

(3).保存

document.save('new_document.docx')

(4).示例

from docx import Document
from docx.shared import Cm

# 创建word对象
document = Document()

# 向文档中插入图片  (要插入的图片路径必须存在)
document.add_picture('XX.jpeg',width=Cm(7))

# 保存文档
document.save('../pycharm测试文件/test67附件-图片.docx')

(5).结果

image.png

4.向现有的word插入图片

(1).打开一个现有的word文档

语法:doc = Document(r'XX.docx')

注意:在 Python 中,在字符串前面加上 r 表示原始字符串。这样做的主要目的是为了避免在字符串中出现的反斜杠 \ 被解释为转义字符。当处理文件路径时,如果不使用原始字符串,可能需要对每个反斜杠进行额外的转义,容易出错且不直观。例如,如果不使用 r ,路径 C:\Users\example ,就得写成 'C:\Users\example' ,而使用 r 就可以直接写成 r'C:\Users\example' ,简洁清晰.

doc = Document(r'../pycharm测试文件/test67附件-图片.docx')

(2).插入图片

语法:同上

(3).保存文档

可保存回原文件,也可另存为.

(4).示例

from docx import Document
from docx.shared import Cm

# 打开一个现有的word文档
doc = Document(r'../pycharm测试文件/test67附件-图片.docx')

# 插入图片
doc.add_picture(r'XX.jpeg',width=Cm(7))

# 保存文档(可保存回原文件,也可另存为)
doc.save(r'../pycharm测试文件/test68附件-图片加图片后.docx')

(5).结果
image.png

总结

我们可以清晰地看到 docx 库在处理 Word 文档方面展现出了极为出色的性能和便捷性。无论是创建全新的文档、读取已有的文档内容、对文档内容进行修改,还是对文档的样式进行精心设置等各项操作,都能够通过简洁明了且易于理解的代码得以高效实现。可以说,docx 库为我们在 Python 环境下处理 Word 文档提供了一个功能强大且极为实用的工具,它极大地助力我们更加高效、精准地完成各种各样与 Word 文档处理相关的任务。

同时,这里只是docx库的一部分内容,明天还会更新如何向word文档中加入列表和表格,有不对的地方请同志们指正,多多包涵,谢谢观看!

相关文章
|
1月前
|
安全 数据安全/隐私保护 Python
Python学习的自我理解和想法(27)
本文记录了学习Python第27天的内容,主要介绍了使用Python操作PPTX和PDF的技巧。其中包括通过`python-pptx`库创建PPTX文件的详细步骤,如创建幻灯片对象、选择母版布局、编辑标题与副标题、添加文本框和图片,以及保存文件。此外,还讲解了如何利用`PyPDF2`库为PDF文件加密,涵盖安装库、定义函数、读取文件、设置密码及保存加密文件的过程。文章总结了Python在处理文档时的强大功能,并表达了对读者应用这些技能的期待。
|
1月前
|
存储 搜索推荐 算法
Python学习的自我理解和想法(28)
本文记录了学习Python第28天的内容——冒泡排序。通过B站千锋教育课程学习,非原创代码。文章详细介绍了冒泡排序的起源、概念、工作原理及多种Python实现方式(普通版、进阶版1和进阶版2)。同时分析了其时间复杂度(最坏、最好、平均情况)与空间复杂度,并探讨了实际应用场景(如小规模数据排序、教学示例)及局限性(如效率低下、不适用于高实时性场景)。最后总结了冒泡排序的意义及其对初学者的重要性。
|
1月前
|
Python
Python学习的自我理解和想法(26)
这是一篇关于使用Python操作Word文档的学习总结,基于B站千锋教育课程内容编写。主要介绍了通过`python-docx`库在Word中插入列表(有序与无序)、表格,以及读取docx文件的方法。详细展示了代码示例与结果,涵盖创建文档对象、添加数据、设置样式、保存文件等步骤。虽为开学后时间有限下的简要记录,但仍清晰梳理了核心知识点,有助于初学者掌握自动化办公技巧。不足之处欢迎指正!
|
2月前
|
数据采集 数据挖掘 Python
Python学习的自我理解和想法(22)
本文记录了作者学习Python第22天的内容——正则表达式,基于B站千锋教育课程。文章简要介绍了正则表达式的概念、特点及使用场景(如爬虫、数据清洗等),并通过示例解析了`re.search()`、`re.match()`、拆分、替换和匹配中文等基本语法。正则表达式是文本处理的重要工具,尽管入门较难,但功能强大。作者表示后续会深入讲解其应用,并强调学好正则对爬虫学习的帮助。因时间有限,内容为入门概述,不足之处敬请谅解。
|
2月前
|
索引 Python
Python学习的自我理解和想法(24)
本文记录了学习Python操作Excel的第24天内容,基于B站千锋教育课程。主要介绍openpyxl插件的使用,包括安装、读取与写入Excel文件、插入图表等操作。具体内容涵盖加载工作簿、获取单元格数据、创建和保存工作表,以及通过图表展示数据。因开学时间有限,文章简要概述了各步骤代码实现,适合初学者参考学习。如有不足之处,欢迎指正!
|
2月前
|
Python
Python学习的自我理解和想法(23)
本文记录了学习Python正则表达式的第23天心得,内容基于B站麦叔课程。文章分为三个部分:1) 正则表达式的七个境界,从固定字符串到内部约束逐步深入;2) 写正则表达式的套路,以座机号码为例解析模式设计;3) 正则表达式语法大全,涵盖字符类别、重复次数、组合模式、位置、分组、标记、特殊字符和替换等知识点。总结中表达了对知识的理解,并欢迎指正。
|
3月前
|
机器学习/深度学习 存储 设计模式
Python 高级编程与实战:深入理解性能优化与调试技巧
本文深入探讨了Python的性能优化与调试技巧,涵盖profiling、caching、Cython等优化工具,以及pdb、logging、assert等调试方法。通过实战项目,如优化斐波那契数列计算和调试Web应用,帮助读者掌握这些技术,提升编程效率。附有进一步学习资源,助力读者深入学习。
|
1月前
|
数据采集 安全 BI
用Python编程基础提升工作效率
一、文件处理整明白了,少加两小时班 (敲暖气管子)领导让整理100个Excel表?手都干抽筋儿了?Python就跟铲雪车似的,哗哗给你整利索!
64 11
|
3月前
|
人工智能 Java 数据安全/隐私保护
[oeasy]python081_ai编程最佳实践_ai辅助编程_提出要求_解决问题
本文介绍了如何利用AI辅助编程解决实际问题,以猫屎咖啡的购买为例,逐步实现将购买斤数换算成人民币金额的功能。文章强调了与AI协作时的三个要点:1) 去除无关信息,聚焦目标;2) 将复杂任务拆解为小步骤,逐步完成;3) 巩固已有成果后再推进。最终代码实现了输入验证、单位转换和价格计算,并保留两位小数。总结指出,在AI时代,人类负责明确目标、拆分任务和确认结果,AI则负责生成代码、解释含义和提供优化建议,编程不会被取代,而是会更广泛地融入各领域。
115 28
|
3月前
|
机器学习/深度学习 数据可视化 TensorFlow
Python 高级编程与实战:深入理解数据科学与机器学习
本文深入探讨了Python在数据科学与机器学习中的应用,介绍了pandas、numpy、matplotlib等数据科学工具,以及scikit-learn、tensorflow、keras等机器学习库。通过实战项目,如数据可视化和鸢尾花数据集分类,帮助读者掌握这些技术。最后提供了进一步学习资源,助力提升Python编程技能。

推荐镜像

更多