教你怎么用Python处理excel实现自动化办公


Posted in Python onApril 30, 2021

一、介绍

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

二、步骤

代统计名单

比如下面这个目录是参与活动的人员名单,每个文件夹为每个人参与活动的相关资料,有些目录是很多人一起参与一个活动,这个时候我要把文件遍历,把名字输入到一个列表中。

教你怎么用Python处理excel实现自动化办公

相关代码如下

# 保存指定目录下文件名到列表
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如下

教你怎么用Python处理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)

代码运行后如下

教你怎么用Python处理excel实现自动化办公

可以看到,成功处理了我需要他处理的列,并进行时长的统计

三、完整代码

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)

到此这篇关于教你怎么用Python处理excel实现自动化办公的文章就介绍到这了,更多相关用Python处理excel实现自动化办公内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
使用Python进行新浪微博的mid和url互相转换实例(10进制和62进制互算)
Apr 25 Python
python中pygame模块用法实例
Oct 09 Python
numpy.linspace函数具体使用详解
May 27 Python
选择Python写网络爬虫的优势和理由
Jul 07 Python
Django框架模型简单介绍与使用分析
Jul 18 Python
Python 使用 docopt 解析json参数文件过程讲解
Aug 13 Python
Python实现Restful API的例子
Aug 31 Python
使用Python操作ArangoDB的方法步骤
Feb 02 Python
python 实现分组求和与分组累加求和代码
May 18 Python
一文读懂Python 枚举
Aug 25 Python
python实现AHP算法的方法实例(层次分析法)
Sep 09 Python
python实现图片素描效果
Sep 26 Python
解决python绘图使用subplots出现标题重叠的问题
python数据库批量插入数据的实现(executemany的使用)
Apr 30 #Python
Python如何把不同类型数据的json序列化
Apr 30 #Python
python实现三次密码验证的示例
Django一小时写出账号密码管理系统
python中的被动信息搜集
Apr 29 #Python
Python基础之元类详解
Apr 29 #Python
You might like
php 使用post,get的一种简洁方式
2010/04/25 PHP
解析php中const与define的应用区别
2013/06/18 PHP
Youku 视频绝对地址获取的方法详解
2013/06/26 PHP
mysql desc(DESCRIBE)命令实例讲解
2016/09/24 PHP
Thinkphp3.2简单解决多文件上传只上传一张的问题
2017/09/26 PHP
关于Laravel-admin的基础用法总结和自定义model详解
2019/10/08 PHP
随窗体滑动的小插件sticky源码
2013/06/21 Javascript
checkbox使用示例
2013/08/23 Javascript
php+js实现倒计时功能
2014/06/02 Javascript
js+csss实现的一个带复选框的下拉框
2014/09/29 Javascript
jQuery统计上传文件大小的方法
2015/01/24 Javascript
js实现透明度渐变效果的方法
2015/04/10 Javascript
jQuery插件jcrop+Fileapi完美实现图片上传+裁剪+预览的代码分享
2015/04/22 Javascript
jquery实现隐藏在左侧的弹性弹出菜单效果
2015/09/18 Javascript
Jquery 自定义事件实现发布/订阅的简单实例
2016/06/12 Javascript
扩展Bootstrap Tooltip插件使其可交互的方法
2016/11/07 Javascript
微信小程序技巧之show内容展示,上传文件编码问题
2017/01/23 Javascript
JS+H5 Canvas实现时钟效果
2018/07/20 Javascript
通过循环优化 JavaScript 程序
2019/06/24 Javascript
Node.js API详解之 tty功能与用法实例分析
2020/04/27 Javascript
js编写简易的计算器
2020/07/29 Javascript
js实现贪吃蛇小游戏(加墙)
2020/07/31 Javascript
[01:11:35]Liquid vs LGD 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
Python获取服务器信息的最简单实现方法
2015/03/05 Python
解决Python 中英文混输格式对齐的问题
2018/07/16 Python
解决python执行不输出系统命令弹框的问题
2019/06/24 Python
使用python进行广告点击率的预测的实现
2019/07/04 Python
CSS3中的content属性使用示例
2015/07/20 HTML / CSS
HTML5的Geolocation地理位置定位API使用教程
2016/05/12 HTML / CSS
新西兰便宜隐形眼镜购买网站:QUICKLENS New Zealand
2019/03/02 全球购物
三个Unix的命令面试题
2015/04/12 面试题
电子技术专业中专生的自我评价
2013/12/17 职场文书
超市后勤自我鉴定
2014/01/17 职场文书
新闻编辑自荐书范文
2014/02/12 职场文书
《月亮湾》教学反思
2014/04/14 职场文书
2015年家长学校工作总结
2015/04/22 职场文书