当前位置: 首页 > 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)

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • [ACP云计算]易混淆知识点(考题总结)
  • Linux的awk使用方式
  • springboot,mysql多数据源-mybaits
  • idea和jdk的安装教程
  • Qt QCustomPlot 图形库详解
  • 代码随想录算法训练营第三十天|查找重叠区间、划分字母区间
  • 自动化测试必会之数据驱动测试
  • 【数据结构和算法】时间复杂度和空间复杂度
  • springBoot框架
  • 守护数字堡垒:全面掌握安全配置管理
  • 什么是令牌桶算法?工作原理是什么?使用它有哪些优点和注意事项?
  • C++ | 深入理解C++的IO流:从控制台输出流到文件输出流的应用
  • LeetCode面试题Day8|LeetCode13 罗马数字转整数、LeetCode12 整数转罗马数字
  • Events and the Kernel
  • HarmonyOS NEXT星河版零基础入门(2)
  • 【391天】每日项目总结系列128(2018.03.03)
  • 【MySQL经典案例分析】 Waiting for table metadata lock
  • 【Redis学习笔记】2018-06-28 redis命令源码学习1
  • 002-读书笔记-JavaScript高级程序设计 在HTML中使用JavaScript
  • Angular Elements 及其运作原理
  • ES6系列(二)变量的解构赋值
  • Fundebug计费标准解释:事件数是如何定义的?
  • Go 语言编译器的 //go: 详解
  • JavaScript类型识别
  • Leetcode 27 Remove Element
  • MySQL用户中的%到底包不包括localhost?
  • ReactNative开发常用的三方模块
  • v-if和v-for连用出现的问题
  • Vue学习第二天
  • vue中实现单选
  • vue自定义指令实现v-tap插件
  • 复杂数据处理
  • 精彩代码 vue.js
  • 如何设计一个比特币钱包服务
  • 使用Envoy 作Sidecar Proxy的微服务模式-4.Prometheus的指标收集
  • 使用iElevator.js模拟segmentfault的文章标题导航
  • 首页查询功能的一次实现过程
  • elasticsearch-head插件安装
  • PostgreSQL之连接数修改
  • 翻译 | The Principles of OOD 面向对象设计原则
  • 机器人开始自主学习,是人类福祉,还是定时炸弹? ...
  • ​iOS实时查看App运行日志
  • ​LeetCode解法汇总2583. 二叉树中的第 K 大层和
  • ​决定德拉瓦州地区版图的关键历史事件
  • #Datawhale X 李宏毅苹果书 AI夏令营#3.13.2局部极小值与鞍点批量和动量
  • (Demo分享)利用原生JavaScript-随机数-实现做一个烟花案例
  • (Redis使用系列) Springboot 使用redis实现接口幂等性拦截 十一
  • (vue)el-cascader级联选择器按勾选的顺序传值,摆脱层级约束
  • (九)One-Wire总线-DS18B20
  • (收藏)Git和Repo扫盲——如何取得Android源代码
  • (算法)Travel Information Center
  • (推荐)叮当——中文语音对话机器人
  • (五)网络优化与超参数选择--九五小庞
  • (一)搭建springboot+vue前后端分离项目--前端vue搭建
  • (原创)boost.property_tree解析xml的帮助类以及中文解析问题的解决