Python如何实现将Word表格嵌入到Excel中
发表于:2024-10-16 作者:千家信息网编辑
千家信息网最后更新 2024年10月16日,这篇文章给大家介绍Python如何实现将Word表格嵌入到Excel中,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。其实就是把Word中的表格转到Excel中,顺便做一个调整。这
千家信息网最后更新 2024年10月16日Python如何实现将Word表格嵌入到Excel中
这篇文章给大家介绍Python如何实现将Word表格嵌入到Excel中,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
其实就是把Word中的表格转到Excel中,顺便做一个调整。这个需求在实际工作中,很多人还是经常碰到的!
如果单单是两个表格,那只要简单的复制黏贴即可,但如果上百了呢?那就得考虑自动化了。好在今天碰到的需求中的原文件格式是比较有规律的,那直接来尝试一下。
# 首先要pip install python-docx# 如果原文件是doc格式,那就先转成docxfrom docx import Documentimport pandas as pd path = "./word表格转excel.docx"docx = Document(path)table_s = docx.tables # 返回一个Table对象的列表 len(table_s) --> 2 # 返回值是2,因为原文件中只有两个表格 list_ = [] # 初始化一个空列表,用来装后面的dict_ for table in table_s: # 循环所有的表格列表 dict_ = {} dict_['名称'] = table.cell(0, 1).text # 表格的索引是从(0行,0列)开始 dict_['身份'] = table.cell(0, 3).text dict_['简介'] = table.cell(1, 1).text for i in range(3, len(table.rows)): # 后续的内容格式不固定,所以循环获取 dict_[table.cell(i, 0).text] = table.cell(i, 1).text list_.append(dict_)
当完成上述操作后,list_就会是一个字典列表。
接下来,将列表转为DataFrame进行操作即可。
df = pd.DataFrame(list_) # 先将前三列作为索引,然后逆透视其他列,其实这就是个一维表转二维表的过程df = df.set_index(['名称', '身份', '简介']).stack(level=0).to_frame() # 重新设置一下行列索引的名字df.index.names = ['名称', '身份', '简介', '物质']df.columns = ['现状']
此时的df就跟需求结果相差不大了。
最后将DataFrame导出,稍作美化即可完成需求。
# 导出的时候一定要设置index=True不然只会保留一列Seriesdf.to_excel("data3.xlsx", index=True, merge_cells=True)
完整代码
# 首先要pip install python-docx# 如果原文件是doc格式,那就先转成docxfrom docx import Documentimport pandas as pd path = "./word表格转excel.docx"docx = Document(path)table_s = docx.tables # 返回一个Table对象的列表 list_ = [] # 初始化一个空列表,用来装后面的dict_ for table in table_s: # 循环所有的表格列表 dict_ = {} dict_['名称'] = table.cell(0, 1).text # 表格的索引是从(0行,0列)开始的 dict_['身份'] = table.cell(0, 3).text dict_['简介'] = table.cell(1, 1).text for i in range(3, len(table.rows)): # 循环获得后面的内容 dict_[table.cell(i, 0).text] = table.cell(i, 1).text list_.append(dict_) df = pd.DataFrame(list_) # 先将前三列作为索引,然后逆透视其他列,就是个一维表转二维表的过程df = df.set_index(['名称', '身份', '简介']).stack(level=0).to_frame() # 重新设置一下行列索引的名字df.index.names = ['名称', '身份', '简介', '物质']df.columns = ['现状'] # 导出的时候一定要设置index=True不然只会保留一列Seriesdf.to_excel("data3.xlsx", index=True, merge_cells=True)
关于Python如何实现将Word表格嵌入到Excel中就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
表格
名称
简介
索引
身份
内容
文件
格式
需求
循环
就是
两个
名字
对象
时候
更多
物质
现状
行列
过程
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
路由器设置成有线打印机服务器
网络安全监测立法
两个gdc服务器怎么节目互传
查看服务器磁盘划分
oracle数据库 面试
负责服务器管理制度
服务器搭建网络代理
网警网络安全保障工作
大学生网络安全主题板报
网络安全务虚会
成都索贝数码软件开发待遇
数据库并发修改问题
数据库怎么创建单元格
chrome 同步服务器
北京军地联合网络技术有限公司
新形势下网络安全挑战与应对
软件开发方案评审
软件开发的考核标准
网络安全领域的牛人
虚拟主机数据库大小
服务器系统打补丁
软件开发没有经验
网络安全类服务资质
社保行业网络安全应急预案
网络安全呵护成长主题手抄报
僵尸毁灭工程更改联机服务器难度
肇庆考试软件开发方案
瑞丽gpu云服务器价格
orcl数据库提示path
cdn服务器能用吗