利用Python如何快速处理文件 我之前要合并将近1000个CSV表格 每个表格共370列,约360行不等,列名相同
三个方案瞬间浮现在我眼前: 1、Ctrl C + Ctrl V——可以睡公司了; 2、Excel Power Query,估计等电脑卡崩了,还得用回方案一; 3、敲代码!俗话说,没有什么是一行代码解决不了的,如果有,就再敲一行。 首先,我把这个问题分解成四个小目标 01查找到工作表所在文件位置 02提取表格 03合并表格 04导出表格 01查找文件位置 首先我们导入python的os模块: import os
使用os模块的walk方法输出指定目录的文件 for file in os.walk('F:/Document/学员数据'): print(file)
我使用for循环遍历‘F:/Document/学员数据’,这个文件目录,得到一个(),这是“元组”(姑且理解为一个盛放东西的容器)。里面用两个逗号分成三部分: 1)第一部分就是我输入的文件夹目录。 2)第二部分是个空列表,不去管它。 3)第三部分也是一个列表,里面是我要提取的每个工作表。 第一个小目标达成(๑ 02、提取表格 首先,我需要知道工作表的文件路径,这很简单!完整的路径就是文件夹目录+工作表名称 然后,我定义一个列表,嗯…这也是个容器,容纳提取的912个文件 接着,我导入pandas包,用read_csv()方法来提取工作表
最后,写好循环,把提取的文件装进列表中,别忘了设置一个计数,用来运行时显示进度 第二个小目标达成(๑·̀ㅂ 03、合并表格 03、合并表格 这里我们用到了pandas的concat方法。 pandas.concat()
合并刚才列表‘l’中的所有工作表到data_result这个变量中。
第三个小目标达成(๑·̀ㅂ·́)و✧ 同样,解决问题的方法也来自于pandas这款神器。 pandas.DataFrame.to_csv()方法
其实,pandas可以保存数据为许多种格式,这里我还是选择了最常用的csv格式。 这里括号内首先填写保存的数据路径和名称,其次,别忘了设置index=0的参数,否则数据会多出一列索引列。啊?听不明白?动手试一试就明白了 第四个小目标达成(๑·̀ㅂ·́)و✧ 让我们回顾一下代码全貌
代码不长,一共23行。 其中10-15行的是代码核心部分,这是实现工作表合并最基本的代码。 主要的工作思路是找到工作表所在的文件夹,提取其中每个工作表,合并它们,然后导出数据。(四个小目标) 才23行代码就可以解决你平时要4-5个小时处理的重复性工作,是不是大大提升了自己的工作效率呢! 见证奇迹的时刻到了~! 酱酱在最下面加了一个计时器,猜猜做完这一堆excel表格只要多久呢 哈哈哈几分钟
合并912个工作表仅仅只要150秒! 纯python开发,应用场景包括单工作簿多工作表、多工作簿多工作表、多文件夹多工作簿的合并。并且可以处理同时含以上三种情况的综合问题! Python里面有超级超级多的Excel模块,Python也是胶水语言,可以非常好的调用C、JAVA的模块 到了12关你还可以做一个简单的员工管理系统
之前学员是处理厂的订单的,需要根据订单信息来打印标签。他每次处理订单都要四五个小时 python有很多处理excel的模块。于是,用python自动处理数据、生成标签 订单信息类似于这样的
每次有新订单,运行一下程序,两秒之内出结果,没有多复杂,大约20多行代码的事情而已~ 这些是Python中常见的对文件的一些操作命令,可以看看,了解一下
在15关就有详细的关于python操作文件的课程学习,
通过这一关卡的学习,对于python操作写入和读取都能很好的学习到的
|