群答疑随手记:文本文件中保存了学生多次测试的成绩。每个学生每次测试成绩占一行,某行数据如:0001 小明 95 请统计每个学生的平均分。

简介: 群答疑随手记:文本文件中保存了学生多次测试的成绩。每个学生每次测试成绩占一行,某行数据如:0001 小明 95 请统计每个学生的平均分。

 目录

一、题目

二、数据样例

三、实验代码

四、实验结果


一、题目

image.gif

       文本文件中保存了学生多次测试的成绩。每个学生每次测试成绩占一行,某行数据如:0001 小明 95 请统计每个学生的平均分。

二、数据样例

image.gif

三、实验代码

import csv
rows3 = ['Num', 'Name', 'Avg_grade']
f = open("../source/result.csv", 'a', newline='', encoding='utf-8')
writer = csv.writer(f)
writer.writerow(rows3)
f.close()
f = open("../source/stu_score.txt",'r', encoding='gbk')
score = []
num = []
name = []
score_m = 0
count = 0
for line in f:
    score.append(line.split()[2].strip())
    num.append(line.split()[0].strip())
    name.append(line.split()[1].strip())
f.close()
num_del = list(set(num))
for i in num_del:
    for j in num:
        if i==j:
            index = [p for p,v in enumerate(num) if v ==j]
            h_name = name[num.index(j)]
            break
    count = len(index)
    for m in index:
        score_m = score_m + int(score[m])
    avg = score_m/count
    print("学号为:",i,"的学生",h_name,"平均成绩为:",avg)
    rows3 = [i, h_name, avg]
    f = open("../source/result.csv", 'a', newline='',encoding='utf-8')
    writer = csv.writer(f)
    writer.writerow(rows3)
    f.close()
    count = 0
    score_m = 0
    avg = 0

image.gif

(本代码为参考解答,非最优解,可精简)

四、实验结果

image.gif

写入csv:

image.gif

打开查看:

image.gif

相关文章
|
1月前
|
存储 测试技术 数据库
数据驱动测试和关键词驱动测试的区别
数据驱动测试 数据驱动测试或 DDT 也被称为参数化测试。
|
1月前
|
SQL 分布式计算 Hadoop
Hadoop-14-Hive HQL学习与测试 表连接查询 HDFS数据导入导出等操作 逻辑运算 函数查询 全表查询 WHERE GROUP BY ORDER BY(一)
Hadoop-14-Hive HQL学习与测试 表连接查询 HDFS数据导入导出等操作 逻辑运算 函数查询 全表查询 WHERE GROUP BY ORDER BY(一)
40 4
|
1月前
|
SQL 消息中间件 大数据
大数据-159 Apache Kylin 构建Cube 准备和测试数据(一)
大数据-159 Apache Kylin 构建Cube 准备和测试数据(一)
50 1
|
1月前
|
SQL 大数据 Apache
大数据-159 Apache Kylin 构建Cube 准备和测试数据(二)
大数据-159 Apache Kylin 构建Cube 准备和测试数据(二)
77 1
|
1月前
|
SQL
Hadoop-14-Hive HQL学习与测试 表连接查询 HDFS数据导入导出等操作 逻辑运算 函数查询 全表查询 WHERE GROUP BY ORDER BY(二)
Hadoop-14-Hive HQL学习与测试 表连接查询 HDFS数据导入导出等操作 逻辑运算 函数查询 全表查询 WHERE GROUP BY ORDER BY(二)
35 2
|
1月前
|
存储 监控 网络安全
内网渗透测试基础——敏感数据的防护
内网渗透测试基础——敏感数据的防护
|
1月前
|
SQL 关系型数据库 MySQL
SQL批量插入测试数据的几种方法?
SQL批量插入测试数据的几种方法?
91 1
|
1月前
|
存储 SQL 分布式计算
大数据-135 - ClickHouse 集群 - 数据类型 实际测试
大数据-135 - ClickHouse 集群 - 数据类型 实际测试
35 0
|
2月前
|
存储 监控 安全
在自动化测试环境中,如何确保测试数据的安全性和隐私性
在自动化测试环境中,如何确保测试数据的安全性和隐私性
|
3月前
|
安全 数据安全/隐私保护 架构师
用Vaadin打造坚不可摧的企业级应用:安全性考虑全解析
【8月更文挑战第31天】韩林是某金融科技公司的架构师,负责构建安全的企业级应用。在众多Web框架中,他选择了简化UI设计并内置多项安全特性的Vaadin。韩林在其技术博客中分享了使用Vaadin时的安全考虑与实现方法,包括数据加密、SSL/TLS保护、结合Spring Security的用户认证、XSS防护、CSRF防御及事务性UI更新机制。他强调,虽然Vaadin提供了丰富的安全功能,但还需根据具体需求进行调整和增强。通过合理设计,可以构建高效且安全的企业级Web应用。
44 0