【办公效率篇】当领导让你把一个年级的学生信息按班级分类保存为多个EXCEL表发给他时,教你用5行代码,1秒钟搞定需要花费几小时甚至更多时间的工作量!!

各行各业的“表”哥姐们在很多时候,会被领导要求把一张信息量巨大的总表,按一定的条件,拆分成多个工作表。比如我的领导要求我把下面这张“5年级在校生信息”按“班级”分发给不同班主任:
在这里插入图片描述
大家通常的做法是谨小慎微、不断重复地复制粘贴,直到老眼昏花、直到手抖犯错、直到不知错从何起而从头开始。
如果领导让你处理的表是全校学生、全国各校区学生、全世界各校区学生呢?加班几个通宵才能把一张张表准确无误地搞定?

这里是你的做法:
在这里插入图片描述
复制粘贴半小时后……
在这里插入图片描述
这里是我的做法,利用python中的pandas库,5行代码、1秒钟拆分工作表。
效果演示视频:

[video(video-Z7INdXls-1598882561826)(type-tencent)(url-https://v.qq.com/txp/iframe/player.html?vid=h3144xzab14)(image-http://puui.qpic.cn/vpic/0/h3144xzab14.png/0)(title-python 办公自动化:1秒钟搞定excel总表的拆分)]

import pandas as pd
df = pd.read_csv('5年级在校生信息.csv') #读取表
for i in range (1,9): #8个班
	save_data =df[df['班级']=='小学2016级'+str(i)+'班']
	print('小学2016级'+str(i)+'班完成哒!!')
	save_data.to_csv('小学2016级'+str(i)+'班.csv',encoding='utf_8_sig',index=False) 

注意
(1)for i in range (1,9)中,(1,9) 是一个前闭后开的区间,所以要获取8个班的数据,就需要修改数值为1:9。
(2)新建的EXCEL表如果出现乱码,设置属性:encoding=‘utf_8_sig’。
(3)若不希望新建的EXCEL表有行索引,那么设置index=False。

猜你喜欢

转载自blog.csdn.net/yljwhat/article/details/108311439