当前位置: 首页 > news >正文

python结合csv和正则实现条件筛选数据统计分数

前景提要:

有一个项目的数值和员工统计的对不上,如果一页一页翻找自己手动算,一个就有16、7页,

功能实现

1、创建csv文件

需要将每一个模块的所有数据头提取出来,这个可以直接用爬虫或者手工复制出来,因为后续还会使用正则进行筛选,所以全部获取出来也没事

请添加图片描述
上面就是所有数据的csv

2、读取csv中的每一个数据进行正则判断

可以看到我上面csv文件中的分数是一位数或者两位数,然后p结尾,所以筛选的时候非常好判断,最后强转一下格式算上总分就好了,如果算单个模块的可以按照csv里面文件的格式,选定判断元素的下一个元素做求和

import csv
import re
sum = 0with open(r'msu\file\819.csv', encoding="utf-8") as f:reader = csv.reader(f)for row in reader:for item in row:# 所有分数match = re.match(r'(\d{1,2})p$', item)if match:number = int(match.group(1))sum += number
print(sum)
http://www.lryc.cn/news/423896.html

相关文章:

  • Ubuntu系统的基础操作和使用|Linux|安装|网络连接|更新与升级系统|系统维护|故障排除|监控|桌面环境|虚拟机|快捷键
  • day 38
  • 352532
  • Day.38 | 1143.最长公共子序列 1035.不相交的线 53.最大子序和 392.判断子序列
  • pytorch 3 计算图
  • 一文吃透:暗水印是什么?企业防泄密可以加暗水印吗?
  • Ajax-02.Axios
  • NodeJS的核心配置文件package.json和package.lock.json详解
  • 开源数据采集和跟踪系统:助力营销决策的关键工具
  • Luminar Neo for Mac/Win:创新AI图像编辑软件的强大功能
  • Mac平台M1PRO芯片MiniCPM-V-2.6网页部署跑通
  • MyBatis:Maven,Git,TortoiseGit,Gradle
  • 获取链表中间位置的两种方法方法
  • 第二十天的学习(2024.8.8)Vue拓展
  • 微信小程序教程011:全局配置:Window
  • Tomcat服务器和Web项目的部署
  • PCIe学习笔记(22)
  • Vue3 依赖注入Provide / Inject
  • Python | Leetcode Python题解之第332题重新安排行程
  • React状态管理:react-redux和redux-saga(适合由vue转到react的同学)
  • 刷题技巧:双指针法的核心思想总结+例题整合+力扣接雨水双指针c++实现
  • 什么是前端微服务,有何优势
  • 小论文写作——02:编故事
  • GIT企业开发使用介绍
  • 文件上传-前端验证
  • ROT加密算法login-RESERVE
  • C++ 新特性 | C++20 常用新特性介绍
  • Java设计模式之策略模式实践
  • C语言——结构体数组、结构体指针、结构体函数与二级指针
  • 【4】策略模式