教你怎么用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代码检查工具pylint 让你的python更规范
Sep 05 Python
详解python中asyncio模块
Mar 03 Python
python之pandas用法大全
Mar 13 Python
Jupyter安装nbextensions,启动提示没有nbextensions库
Apr 23 Python
Python常见字典内建函数用法示例
May 14 Python
TensorFlow 模型载入方法汇总(小结)
Jun 19 Python
python实现电脑自动关机
Jun 20 Python
如何在python字符串中输入纯粹的{}
Aug 22 Python
django celery redis使用具体实践
Apr 08 Python
Python PIL图片添加字体的例子
Aug 22 Python
opencv python 图片读取与显示图片窗口未响应问题的解决
Apr 24 Python
keras 自定义loss model.add_loss的使用详解
Jun 22 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 获取客户端的真实ip
2009/11/30 PHP
php中输出json对象的值(实现方法)
2018/03/07 PHP
php输出控制函数和输出函数生成静态页面
2019/06/27 PHP
PhpStorm+xdebug+postman调试技巧分享
2020/09/15 PHP
父窗口获取弹出子窗口文本框的值
2006/06/27 Javascript
JavaScript中的Location地址对象
2008/01/16 Javascript
jquery validation插件表单验证的一个例子
2010/03/03 Javascript
用Javascript来生成ftp脚本的小例子
2013/07/03 Javascript
基于jQuery实现下拉框
2014/11/24 Javascript
浅析AngularJs HTTP响应拦截器
2015/12/28 Javascript
jquery实现左右滑动式轮播图
2017/03/02 Javascript
JS实现利用两个队列表示一个栈的方法
2017/12/13 Javascript
在node中使用jwt签发与验证token的方法
2019/04/03 Javascript
Vue.js 实现地址管理页面思路详解(地址添加、编辑、删除和设置默认地址)
2019/12/11 Javascript
ssm+vue前后端分离框架整合实现(附源码)
2020/07/08 Javascript
解决vuex数据页面刷新后初始化操作
2020/07/26 Javascript
python 中split 和 strip的实例详解
2017/07/12 Python
详解 Python 与文件对象共事的实例
2017/09/11 Python
Numpy数组的保存与读取方法
2018/04/04 Python
PyQt4实现下拉菜单可供选择并打印出来
2018/04/20 Python
Python中list查询及所需时间计算操作示例
2018/06/21 Python
python实现输入任意一个大写字母生成金字塔的示例
2019/10/27 Python
jupyter实现重新加载模块
2020/04/16 Python
Python使用lambda抛出异常实现方法解析
2020/08/20 Python
Blue Nile蓝色尼罗河香港官网:世界最大在线钻石珠宝销售商
2020/05/07 全球购物
科颜氏香港官方网店:Kiehl’s香港
2021/03/07 全球购物
解释一下Windows的消息机制
2014/01/30 面试题
写一个方法,输入一个文件名和一个字符串,统计这个字符串在这个文件中出现的次数
2016/04/13 面试题
大学本科生的个人自我评价
2013/12/09 职场文书
材料采购员岗位职责
2013/12/17 职场文书
加拿大探亲邀请信
2014/01/28 职场文书
检察机关个人对照检查材料
2014/09/15 职场文书
正风肃纪查摆剖析材料
2014/10/10 职场文书
汇报材料怎么写
2014/12/30 职场文书
CSS实现两列布局的N种方法
2021/08/02 HTML / CSS
详解MySQL的主键查询为什么这么快
2022/04/03 MySQL