python读取word 中指定位置的表格及表格数据
作者:Chelseady 发布时间:2021-04-10 02:42:21
标签:python,word,表格
1.Word文档如下:
2.代码
# -*- coding: UTF-8 -*-
from docx import Document
def readSpecTable(filename, specText):
document = Document(filename)
paragraphs = document.paragraphs
allTables = document.tables
specText = specText.encode('utf-8').decode('utf-8')
for aPara in paragraphs:
if aPara.text == specText:
ele = aPara._p.getnext()
while (ele.tag != '' and ele.tag[-3:] != 'tbl'):
ele = ele.getnext()
if ele.tag != '':
for aTable in allTables:
if aTable._tbl == ele:
for i in range(len(aTable.rows)):
for j in range(len(aTable.columns)):
print(aTable.cell(i, j).text)
if __name__ == '__main__':
readSpecTable('test.docx', '符号约定')
3.结果
符号
符号
含义
数据域取值符号
M
必须填写的域
数据域取值符号
C
某条件成立时必须填写的域
数据域取值符号
O
可选,非必须填写的域
数据域取值符号
←
必须与先前报文中对应域的值相同的域
数据域取值符号
-
必须去除的域
数据域属性符号
基本数据域
数据域属性符号
[]
标识为消息组件名称数据域
数据域属性符号
{}
标识为消息组件中重复的数据域
数据域属性符号
→
标识为消息组件中包含的基础数据域
数据域属性符号
→[]
标识为消息组件中的子消息组件
数据域属性符号
→{}
标识为子消息组件中重复的数据域块
数据域属性符号
→→
标识为子消息组件中包含的基础数据域
PS:python读取word文档表格里的数据
首先需要安装相应的支持库:
直接在命令行执行pip install python-docx
示例代码如下:
import docx
from docx import Document #导入库
path = "E:\\python_data\\1234.docx" #文件路径
document = Document(path) #读入文件
tables = document.tables #获取文件中的表格集
table = tables[0 ]#获取文件中的第一个表格
for i in range(1,len(table.rows)):#从表格第二行开始循环读取表格数据
result = table.cell(i,0).text + "" +table.cell(i,1).text+
table.cell(i,2).text + table.cell(i,3).text
#cell(i,0)表示第(i+1)行第1列数据,以此类推
print(result)
总结
以上所述是小编给大家介绍的python读取word 中指定位置的表格及表格数据,网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
来源:https://blog.csdn.net/Chelseady/article/details/102689683


猜你喜欢
- MySQL Binary Log也就是常说的bin-log, ,是mysql执行改动产生的二进制日志文件,其主要作用有两个: * 数据回复
- 一、关联规则概述1993年,Agrawal等人在首先提出关联规则概念,迄今已经差不多30年了,在各种算法层出不穷的今天,这算得上是老古董了,
- 我写的这个程序import tensorflow as tfsess=tf.InteractiveSession()x=tf.Variabl
- 前言大家应该经常在朋友圈看到有人发九宫格图片,其实质就是将一张图片切成九份,然后在微信中一起发这九张图即可。说到切图,Python 就可以实
- 如何定义多对多关系Django 本身自带了一个很强大的ORM,支持自定义model并将其映射到数据库的表中model中可以定义各种类型的数据
- 本文实例讲述了Python延时操作实现方法。分享给大家供大家参考,具体如下:在日常的开发中,往往会遇到这样的需求,需要某一个函数在一段时间之
- 昨天晚些时候微信团队发布了微信小程序开发者工具、微信小程序开发文档和微信小程序设计指南,全新的开发者工具,集成了开发调试、代码编辑及程序发布
- 本文将详细介绍一下如何搭建深度学习所需要的实验环境.这个框架分为以下六个模块显卡简单理解这个就是我们常说的GPU,显卡的功能是一个专门做矩阵
- 第一种方法:递归def perms(elements): if len(elements) <=1
- 前言mitmproxy 是 man-in-the-middle proxy 的简称,译为中间人代理工具,可以用来拦截、修改、保存 HTTP/
- python之Pyperclip模块下面介绍一下,python中的Pyperclip模块,它的简单又实用,主要用法就2点:1.用于复制剪贴板
- Python中的列表基于PyListObject实现,列表支持元素的插入、删除、更新操作,因此PyListObject是一个变长对象(列表的
- 遍历pd.Series的index和value的方法如下,python built-in list的enumerate方法不管用for i,
- 考虑这个问题:定义一个简单的行向量a如何复制10行呢?即:同理,对于一个列向量,如何复制 10 列呢?关键函数1:repmat( A , m
- 简介:图像二值化就是将图像上的像素点的灰度值设置为0或255,也就是将整个图像呈现出明显的黑白效果的过程。普通图像二值化代码如下:impor
- 前言:大家好,今天和大家分享自己总结的6个常用的 Python 数据处理代码,对于经常处理数据的coder最好熟练掌握。1、选取有空值的行在
- 傅里叶变换图像处理一般分为空间域处理和频率域处理。空间域处理是直接对图像内的像素进行处理。空间域处理主要划分为灰度变换和空间滤波两种形式。灰
- 一、什么是集成学习集成学习是一种技术框架,它本身不是一个单独的机器学习算法,而是通过构建并结合多个机器学习器来完成学习任务,一般结构是:先产
- 说明:开启MySQL binlog日志的服务器,如果不设置自动清理日志,默认binlog日志一直保留着,时间一长,服务器磁盘空间被binlo
- 一、打开摄像头import cv2import numpy as npdef video_demo(): capture = c