教你怎么用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编程中进行迭代和遍历
Jan 19 Python
Python编程之string相关操作实例详解
Jul 22 Python
python+pygame简单画板实现代码实例
Dec 13 Python
Python中利用xpath解析HTML的方法
May 14 Python
python读取csv和txt数据转换成向量的实例
Feb 12 Python
Python将json文件写入ES数据库的方法
Apr 10 Python
python  文件的基本操作 菜中菜功能的实例代码
Jul 17 Python
详解Python用三种方式统计词频的方法
Jul 29 Python
Django单元测试工具test client使用详解
Aug 02 Python
PIP和conda 更换国内安装源的方法步骤
Sep 21 Python
python爬虫之爬取笔趣阁小说
Apr 22 Python
全网非常详细的pytest配置文件
Jul 15 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
PHP5权威编程阅读学习笔记 附电子书下载
2012/07/05 PHP
php 在线导入mysql大数据程序
2015/06/11 PHP
Symfony2实现在doctrine中内置数据的方法
2016/02/05 PHP
php rsa 加密,解密,签名,验签详解
2016/12/06 PHP
PHP时间处理类操作示例
2018/09/05 PHP
Javascript 面向对象 继承
2010/05/13 Javascript
javascript中节点的最近的相关节点访问方法
2013/03/20 Javascript
javascript中一些util方法汇总
2015/06/10 Javascript
简介JavaScript中的setDate()方法的使用
2015/06/11 Javascript
使用three.js 画渐变的直线
2016/06/05 Javascript
分享JS数组求和与求最大值的方法
2016/08/11 Javascript
js实现按钮控制带有停顿效果的图片滚动
2016/08/30 Javascript
使用ReactJS实现tab页切换、菜单栏切换、手风琴切换和进度条效果
2016/10/17 Javascript
easyui关于validatebox实现多重规则验证的方法(必看)
2017/04/12 Javascript
详解微信小程序 通过控制CSS实现view隐藏与显示
2017/05/24 Javascript
node.js 核心http模块,起一个服务器,返回一个页面的实例
2017/09/11 Javascript
js 两数组去除重复数值的实例
2017/12/06 Javascript
JavaScript数据结构与算法之二叉树实现查找最小值、最大值、给定值算法示例
2019/03/01 Javascript
解决cordova+vue 项目打包成APK应用遇到的问题
2019/05/10 Javascript
Vue v-for循环之@click点击事件获取元素示例
2019/11/09 Javascript
微信小程序实现拼图小游戏
2020/10/22 Javascript
[11:42]2018DOTA2国际邀请赛寻真——OG卷土重来
2018/08/17 DOTA
Python SQLite3数据库操作类分享
2014/06/10 Python
Python捕捉和模拟鼠标事件的方法
2015/06/03 Python
python实现class对象转换成json/字典的方法
2016/03/11 Python
Python探索之修改Python搜索路径
2017/10/25 Python
一个Python最简单的接口自动化框架
2018/01/02 Python
《Python学习手册》学习总结
2018/01/17 Python
Python基础之文件读取的讲解
2019/02/16 Python
python删除列表元素的三种方法(remove,pop,del)
2019/07/22 Python
微信公众号token验证失败解决方案
2019/07/22 Python
阿迪达斯英国官方网站:adidas英国
2019/08/13 全球购物
俄罗斯设计师家具购物网站:The Furnish
2019/12/01 全球购物
应用数学专业求职信
2014/03/14 职场文书
终止合同协议书
2014/04/17 职场文书
如何使用SQL Server语句创建表
2022/04/12 SQL Server