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

 更新时间:2021年04月30日 14:14:07   作者:涛涛真酷  
这篇文章主要介绍了教你怎么用Python处理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如下

在这里插入图片描述

处理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)

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

相关文章

  • 解决Vscode中jupyter出现kernel dead问题

    解决Vscode中jupyter出现kernel dead问题

    遇到VSCode中Jupyter Kernel Dead时,可通过Anaconda Prompt安装ipykernel解决,首先使用jupyter kernelspec list命令查看内核,若发现缺少ipykernel,激活相应虚拟环境,使用conda install ipykernel命令安装,操作后,VSCode中Jupyter应能正常运行
    2024-09-09
  • 详解Python中的format格式化函数的使用方法

    详解Python中的format格式化函数的使用方法

    这篇文章主要介绍了详解Python中的format格式化函数的使用方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-11-11
  • 使用Python进行物联网设备的控制与数据收集

    使用Python进行物联网设备的控制与数据收集

    Python作为一种高效且易于学习的编程语言,已经成为开发物联网应用的首选语言之一,本文将探讨如何使用Python进行物联网设备的控制与数据收集,并提供相应的代码示例,需要的朋友可以参考下
    2024-05-05
  • 在matplotlib中改变figure的布局和大小实例

    在matplotlib中改变figure的布局和大小实例

    这篇文章主要介绍了在matplotlib中改变figure的布局和大小实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-04-04
  • 创建SparkSession和sparkSQL的详细过程

    创建SparkSession和sparkSQL的详细过程

    SparkSession 是 Spark SQL 的入口,Builder 是 SparkSession 的构造器。 通过 Builder, 可以添加各种配置,并通过 stop 函数来停止 SparkSession,本文给大家分享创建SparkSession和sparkSQL的详细过程,一起看看吧
    2021-08-08
  • Python中exit、return、sys.exit()等使用实例和区别

    Python中exit、return、sys.exit()等使用实例和区别

    这篇文章主要介绍了Python中exit、return、sys.exit()等使用实例和区别,本文是一个实际项目中的总结,需要的朋友可以参考下
    2015-05-05
  • 一文带你吃透Python中的os和sys模块

    一文带你吃透Python中的os和sys模块

    os 模块是 Python中的一个内置模块,也是 Python中整理文件和目录最为常用的模块。sys 模块主要负责与 Python 解释器进行交互,该模块提供了一系列用于控制 Python 运行时环境的不同部分(函数和变量等)。本文主要来聊聊这两个模块的使用,希望对大家有所帮助
    2023-02-02
  • python selenium实现发送带附件的邮件代码实例

    python selenium实现发送带附件的邮件代码实例

    这篇文章主要介绍了python selenium实现发送带附件的邮件代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-12-12
  • 安装python时MySQLdb报错的问题描述及解决方法

    安装python时MySQLdb报错的问题描述及解决方法

    这篇文章主要介绍了安装python时MySQLdb报错的问题描述及解决方法,需要的朋友可以参考下
    2018-03-03
  • Python中字典的缓存池

    Python中字典的缓存池

    这篇文章主要介绍了Python中字典的缓存池,字典的缓存池采用数组实现的,并且容量也是80个,下文详细介绍需要的小伙伴可以参考一下
    2022-05-05

最新评论