python操作读取excl并进行数据统计

文章介绍了如何使用Python和xlrd库遍历指定文件夹中的Excel文件,检查每个sheet中满足特定条件(单元格包含数字字母且非空)的行数,最后统计所有文件的总记录数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

判断是否单元格是否为数字字母内容

bool(re.match(r'^[a-zA-Z0-9]+$', row[rownum + 1]))

判断行是否为float类型

type(row[rownum]) == float

获取workboot中sheet的名称

sheet.name 

场景读取某个文件夹下的excl并统计每个sheet页中存在满足条件的 记录数

import re
import os
import xlrd

def get_files_in_folder(folder_path):
    file_names = os.listdir(folder_path)
    return file_names
def readExcl(path):
    # 打开工作表
    workbook = xlrd.open_workbook(path)
    # 获取所有的工作薄
    sheets = workbook.sheet_names()
    # 获取sheet总个数
    num = workbook.nsheets
    countLine = 0
    # 返回的结果集
    for i in range(num):
        sheet = workbook.sheets()[i]
        # python3.8用法
        rows = sheet.nrows
        rownum = 0
        line = 0
        for i in range(rows):
            row = sheet.row_values(i)
            if rownum == 0:
                for td in range(len(row)):
                    if row[td] == "xx监测日期":
                        rownum = td
            elif type(row[rownum]) == float and bool(re.match(r'^[a-zA-Z0-9]+$', row[rownum + 1])): #条件判断
                line = line + 1
        if line > 0:
            print(sheet.name + " " + str(line))
            countLine = countLine+line
    return countLine

if __name__ == '__main__':
    path= "C:\\path\\"
    files = get_files_in_folder(path)
    cl = 0
    for file in files:
        cl = readExcl(path+file)+cl
    print("总数:"+str(cl))

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

豆芽脚脚

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值