基础知识

安装python-docx
pip install python-docx

打开文档

doc = Document('test.docx')

添加段落

paragraph = doc.add_paragraph('段落1')

在段落尾部添加文本

wenben=paragraph.add_run('我是中国人')

获取段落数量

# 段落数量
print(len(doc.paragraphs))

全局字体设置

doc.styles['Normal'].font.name = u'宋体'
doc.styles['Normal']._element.rPr.rFonts.set(qn('w:eastAsia'), u'宋体')

拓展:修改文本中题号
如:1. 2. 3. 类型

all = re.sub(r'[0-9]{1,5}\.', "*", all)

查询括号内的内容

pattern = r'[(](.*?)[)]'
res = re.findall(pattern, i)

删除括号内的内容

i = re.sub(u"\(.*?\)", "( )", i)
文字大小 加粗 颜色
from docx import Document
from docx.oxml.ns import qn
from docx.shared import Pt, RGBColordoc = Document()doc = Document()
# 全局字体设置
doc.styles['Normal'].font.name = u'宋体'
doc.styles['Normal']._element.rPr.rFonts.set(qn('w:eastAsia'), u'宋体')title = doc.add_paragraph()
t1 = title.add_run('公司员工请假条')    # 内容
t1.font.bold = True                    # 加粗
t1.font.size = Pt(20)                  # 设置字体大小
t1.font.color.rgb = RGBColor(60,200,250)   #字体颜色doc.save('666.docx')
首行缩进:
缩进方式 属性
左边缩进 left_indent
右边缩进 right_indent
首航缩进 first_line_indent
from docx import Document
from docx.shared import Inchesdoc = Document()article = doc.add_paragraph()
a2 = article.add_run('因______,特向您请事假____天。请假时间自_____年___月___日至_____年___月___日。这段时间内原计划安排的课程已做好处理,希望领导批准。'
)
# 首行缩进2个字符
article2_format = article.paragraph_format
article2_format.first_line_indent = Inches(0.3)doc.save('666.docx')
对齐方式:
名称 属性
左对齐 LEFT
居中 CENTER
右对齐 RIGHT
文本两端对齐 JUSTIFY
from docx import Document
from docx.enum.text import WD_PARAGRAPH_ALIGNMENTdoc = Document()title = doc.add_paragraph()
t1 = title.add_run('公司员工请假条')                # 内容
title.alignment = WD_PARAGRAPH_ALIGNMENT.CENTER     # 居中doc.save('666.docx')

读取word

word文件:

代码:

from docx import Documentdoc = Document('文档.docx')# 获取段落文字 不带格式
for paragraph in doc.paragraphs:print(paragraph.text)# 文字块:获取第二段文字 带格式
paragraph = doc.paragraphs[1]   #获取第二段落
runs = paragraph.runs
for run in runs:print(run.text)

生成word

from docx import Document
from docx.shared import Cm# 实例化
doc = Document()# 标题
doc.add_heading("一级标题", level=1)# 添加一个带格式段落
paragraph1 = doc.add_paragraph()
paragraph1.add_run('加粗').bold = True
paragraph1.add_run('普通')
paragraph1.add_run('斜体').italic = True# 添加图片
doc.add_picture('tupian.jpg', width=Cm(5), height=Cm(10))# 添加表格  doc.add_table(rows=行, cols=列)
# cells; 格子
records = [['学号', '姓名', '成绩'],['101', '小红', '98'],['102', '小明', '95'],['103', '小李', '100']
]
table = doc.add_table(rows=4, cols=3, style='Table Grid')
for row in range(4):cells = table.rows[row].cellsfor col in range(3):cells[col].text = str(records[row][col])# 添加分页
doc.add_page_break()doc.save('测试.docx')

案例:请假条

from docx.enum.text import WD_PARAGRAPH_ALIGNMENT
from docx import Document
from docx.shared import Pt, Inches
from docx.oxml.ns import qndoc = Document()
# 全局字体设置
doc.styles['Normal'].font.name = u'宋体'
doc.styles['Normal']._element.rPr.rFonts.set(qn('w:eastAsia'), u'宋体')# 1、标题
title = doc.add_paragraph()
title1 = title.add_run('公司员工请假条')    # 内容
title1.font.size = Pt(20)           # 设置字体大小
title1.bold = True                  # 加粗
title.alignment = WD_PARAGRAPH_ALIGNMENT.CENTER     # 居中# 2、正文
article1 = doc.add_paragraph()
a1 = article1.add_run('__________部:')article2 = doc.add_paragraph()
a2 = article2.add_run('因________________________________________,特向您请事假____天。请假时间自_____年___月___日至_____年___月___日。这段时间内原计划安排的课程已做好处理,希望领导批准。'
)
# 首行缩进  负值表示悬挂缩进
article2_format = article2.paragraph_format
article2_format.first_line_indent = Inches(0.3)article3 = doc.add_paragraph()
a3 = article3.add_run('请假人:')      # 内容
article3.alignment = WD_PARAGRAPH_ALIGNMENT.RIGHT
article3_format = article3.paragraph_format
article3_format.right_indent = Inches(0.9)nowData = doc.add_paragraph()
n3 = nowData.add_run('年  月  日')      # 内容
nowData.alignment = WD_PARAGRAPH_ALIGNMENT.RIGHT
nowData_format = nowData.paragraph_format
nowData_format.right_indent = Inches(0.3)# 这一步调整文件格式为居中
doc.save('test.docx')

python 操作word文件案例相关推荐

  1. python入门教程2word-入门干货:Python操作Word文件经验分享

    原标题:入门干货:Python操作Word文件经验分享 导读:Microsoft Word在当前使用中是占有巨大优势的文字处理器,这使得Word专用的档案格式Word 文件(.docx)成为事实上最通 ...

  2. 入门干货:Python操作Word文件经验分享

    导读:Microsoft Word在当前使用中是占有巨大优势的文字处理器,这使得Word专用的档案格式Word 文件(.docx)成为事实上最通用的标准. 在日常工作中,有些时候会有很多重复的工作,比 ...

  3. python操作word文件_利用PYTHON操作WORD文档

    office 2007 中不能直接打开 VB 编辑器,请按 Alt + F11 打开. import win32com.client # 导入脚本模块 WordApp = win32com.clien ...

  4. Python操作word手册,与打包生成word文件

    title: Python操作word手册 copyright: true top: 0 date: 2018-11-23 14:59:03 tags: python-word categories: ...

  5. Python+Word:我已经使用“pip install docx”命令安装了扩展库docx,为什么无法运行书上的代码操作Word文件呢?

    操作Word文件的扩展库名字叫python-docx,不是docx.另外要注意,扩展库python-docx只能操作Word 2007或更新版本的文档,不能处理Word 2003之前的文档.

  6. Python操作word基础

    在办公自动化的操作,往往可能会存在Word的操作.因为在办公 时,对文档的操作是必不可少的.而在Python操作Word时,可以 使用一个三方的模块库 Python-docx 安装 pip insta ...

  7. Python检查Word文件中包含特定关键字的所有页码

    推荐教材:<Python程序设计基础与应用>(ISBN:9787111606178),董付国,机械工业出版社 图书详情: 配套资源: 用书教师可以联系董老师获取教学大纲.课件.源码.教案. ...

  8. Python 操作Word文档插入图片和表格实例演示

    Python 操作Word文档插入图片和表格实例演示 效果图 实现过程 ① python-docx 库安装 ② word 文档插入图片演示 ③ word 文档插入表格演示 [ 文章推荐 ] Pytho ...

  9. python操作word文档中的图片_Python操作word文档插入图片和表格的实例演示

    前言P6Q免费资源网 图片是Word的一种特殊内容,这篇文章主要介绍了关于Python操作word文档,向里面插入图片和表格的相关内容,下面话不多说了,来一起看看详细的代码P6Q免费资源网 实例代码: ...

最新文章

  1. 东方卫视演得泰坦机器人_机器人“舞林大会”燃爆全民定向运动大赛
  2. java自定义异常返回_Java自定义异常
  3. AgileEAS.NET平台开发实例-药店系统-报表开发(高级篇)
  4. python web开发-flask中response,cookies,session对象使用详解
  5. (未写)tyvj-1333- Coder Space的邀请
  6. 利用Vert.x构建简单的API 服务、分布式服务
  7. 用java编写一个故事的程序_使用Java怎么编写一个递归程序
  8. 设置电脑右下角显示自己的大名
  9. 从零开始学习 ASP.NET MVC 1.0 (四) View/Model 全解 【转】
  10. MongoDB学习笔记(查询)
  11. Ansible - 自动化运维工具
  12. 抖音网红简易时钟代码
  13. js模板引擎渲染html,JavaScript模板引擎 art-template.js 的使用
  14. 数据库的四种隔离级别
  15. 服务器-----tomact服务器工作原理及其工作报错
  16. 中兴如何远程服务器时间同步,IPTV系统时钟同步功能配置方法——中兴
  17. 上网行为安全之终端识别和管理技术
  18. T4M插件放入unity后怎么找不到_Unity动画系统详解4:如何用代码控制动画?
  19. 合伙开公司要如何规避风险
  20. 【Spring Cloud Alibaba 温故而知新】(五)SpringCloud Sleuth + Zipkin:分布式日志追踪

热门文章

  1. TPS(薄板样条) 2D 插值
  2. Oracle 增删改查
  3. 1、Android测试入门
  4. 使用MMC管理windows机器
  5. 《面向模式的软件体系结构2-用于并发和网络化对象模式》读书笔记(12)--- 策略化加锁...
  6. Request.UrlReferrer详解
  7. 特权级——保护模式的特权级检查 DPL,RPL,CPL, 一致代码段,非一致代码段
  8. 深入学习Tomcat----自己动手写服务器(附服务器源码)
  9. HBase-scan API 通过scan读取表中数据
  10. TabSpec与TabHost