实战|Python六行代码实现多个Excel合并

项目背景

事情是这样的,某事业单位员工A需要每天从业务系统中导出订单表(表结构一致),并最终汇总到一个Excel中进行数据分析。他从系统中导出的文件结构为一个主目录orders,主目录下两个子目录分别为orders1和orders2,子目录下又有很多个订单表,具体如图所示:

我连忙喝了杯海外上市的国产咖啡冷静了一下,突然有了些许头绪。为了不让思绪溜走,赶紧打开了order1.xlsx看下表结构,长这样:

需求1搞定。

二、合并指定目录下的指定订单表

所有订单表都会合并了,只合并几个表算啥指定好对应的文件路径就好啦。废话不多说,直接上代码:

以上代码实现了orders1目录下的order1.xlsx和order2.xlsx合并。

需求2搞定。

三、合并指定目录指定订单表的指定字段

这个听起来有点绕,咱用正常人的口吻改下表述。比如还是orders1目录,咱们只合并order1.xlsx的品目字段和order2.xlsx的数量、单价字段。

以上注意axis=1表示横向合并。打印一下result4,长这样:

实现这个需求要用到os库的walk方法。

先上代码再解释:

通过os.walk()方法,可以查询到目录下不同文件夹中的文件。dir_path代表的是文件路径,dirs代表的是目录下的文件夹,files代表的是目录下的文件。这里J哥加了一个条件判断,因为print(file_path)时发现里面多了个没用的东东。

需求4搞定。

结 语

感觉Excel合并在我们的日常工作和生活中还是会经常用到的,如果你只是想合并几个Excel,我强烈建议你手动合并,你的手速肯定比我敲代码快。当然即使有大量的表格需要合并,VBA也是可以搞定的,虽然我没试过,但我觉得代码量肯定比Python多,毕竟Python只要6行代码啊!

在学习python中有任何困难不懂可以微信扫描下方CSDN官方认证二维码加入python交流学习
多多交流问题,互帮互助,这里有不错的学习教程和开发工具。

二、学习软件

工欲善其事必先利其器。学习Python常用的开发软件都在这里了,给大家节省了很多时间。

四、实战案例

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年11月22日
下一篇 2022年11月22日

相关推荐