python处理excel实现自动化办公

【摘要】 python处理excel实现自动化办公
介绍
实现的是把某个文件夹下的所有文件名提取出来,放入一个列表,在与excel中的某列进行对比,如果一致的话,对另一列进行操作,比如我们在统计人员活动情况的时候,对参加的人需要进行记录。
截图
代统计名单 比如下面这个目录是参与活动的人员名单,每个文件夹为每个人参与活动的相关资料,有些目录是很多人一起参与一个活动,这个时…

python处理excel实现自动化办公

介绍

实现的是把某个文件夹下的所有文件名提取出来,放入一个列表,在与excel中的某列进行对比,如果一致的话,对另一列进行操作,比如我们在统计人员活动情况的时候,对参加的人需要进行记录。

截图

  1. 代统计名单
    比如下面这个目录是参与活动的人员名单,每个文件夹为每个人参与活动的相关资料,有些目录是很多人一起参与一个活动,这个时候我要把文件遍历,把名字输入到一个列表中。
    在这里插入图片描述
    相关代码如下:
# 保存指定目录下文件名到列表
def Save_name(dirPath): filePath = dirPath names = os.listdir(filePath) return names
# 处理文件名
def progress_name(name): result = [] for str in name: str_list = str.split() for i in str_list: result.append(i) return result

  
 
  1. 代处理的excel如下:
    在这里插入图片描述
    处理excel我用到的是pandas库,相关代码如下:
# 处理excel表
def progress_excel(name, filepath, col): data1 = pd.DataFrame(pd.read_excel(filepath))  # 这个会直接默认读取到这个Excel的第一个表单 data = data1.head(70)  # 默认读取前5行的数据 num = data.index for i in name: for j in num: if data['姓名'].loc[j] == i: data[col].loc[j] = 0.5 print(data) DataFrame(data).to_excel('活动记录.xlsx', sheet_name='Sheet1', index=False, header=True)
  
 

代码运行后如下:
在这里插入图片描述
可以看到,成功处理了我需要他处理的列,并进行时长的统计

完整代码

import os
import pandas as pd
from pandas import DataFrame
# 保存指定目录下文件名到列表
def Save_name(dirPath): filePath = dirPath names = os.listdir(filePath) return names
# 处理文件名
def progress_name(name): result = [] for str in name: str_list = str.split() for i in str_list: result.append(i) return result
# 处理excel表
def progress_excel(name, filepath, col): data1 = pd.DataFrame(pd.read_excel(filepath))  # 这个会直接默认读取到这个Excel的第一个表单 data = data1.head(70)  # 默认读取前5行的数据 num = data.index for i in name: for j in num: if data['姓名'].loc[j] == i: data[col].loc[j] = 0.5 print(data) DataFrame(data).to_excel('活动记录.xlsx', sheet_name='Sheet1', index=False, header=True)
if __name__ == '__main__': path = 'F:\\党支部\\环境美化活动'  # 要提取文件夹名的路径 names = Save_name(path) filenames = progress_name(names) # print(filenames) # print(len(filenames)) excelname = 'F:\\党支部\\活动记录.xlsx'  # 要处理的表 col = '校园环境美化活动(0.5h)'  # 要处理的列 progress_excel(filenames, excelname, col)

  
 

文章来源: blog.csdn.net,作者:涛涛真酷,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/weixin_44570805/article/details/116245964

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享