鱼C论坛

 找回密码
 立即注册
查看: 2564|回复: 36

[技术交流] 简易的学生成绩管理代码

[复制链接]
发表于 2023-4-30 19:53:53 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
  1. import pandas as pd
  2. import numpy as np
  3. import matplotlib.pyplot as plt

  4. # 定义学生类
  5. class Student:
  6.     def __init__(self, name, scores):
  7.         self.name = name
  8.         self.scores = scores

  9.     def get_avg_score(self):
  10.         return np.mean(self.scores)

  11. # 定义成绩单类
  12. class Gradebook:
  13.     def __init__(self, students):
  14.         self.students = students

  15.     # 获取平均分数列表
  16.     def get_avg_scores(self):
  17.         return [student.get_avg_score() for student in self.students]

  18.     # 绘制成绩分布直方图
  19.     def plot_histogram(self):
  20.         plt.hist(self.get_avg_scores(), bins=np.arange(0, 101, 10))
  21.         plt.xlabel('Score')
  22.         plt.ylabel('Number of students')
  23.         plt.title('Distribution of student scores')
  24.         plt.show()

  25.     # 导出成绩报告
  26.     def export_report(self, filename):
  27.         data = {'name': [student.name for student in self.students],
  28.                 'scores': [student.scores for student in self.students],
  29.                 'avg_score': self.get_avg_scores()}
  30.         df = pd.DataFrame(data)
  31.         df.to_csv(filename, index=False)

  32. # 创建学生对象
  33. student1 = Student('小明', [80, 90, 85])
  34. student2 = Student('小红', [90, 95, 92])
  35. student3 = Student('小张', [85, 88, 90])

  36. # 创建成绩单对象并添加学生
  37. gradebook = Gradebook([student1, student2, student3])

  38. # 绘制成绩分布直方图
  39. gradebook.plot_histogram()

  40. # 导出成绩报告
  41. gradebook.export_report('report.csv')
复制代码

评分

参与人数 3荣誉 +7 鱼币 +8 贡献 +6 收起 理由
青出于蓝 + 5 + 5 + 5
liuhongrun2022 + 2 + 2 + 1
元豪 + 1 没额度了

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2023-4-30 19:55:35 | 显示全部楼层
QQ截图20230430195436.png
代码编译结果
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-4-30 19:56:09 | 显示全部楼层
本帖最后由 yinda_peng 于 2023-5-2 09:44 编辑

@夏季的春秋 看看
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-4-30 19:58:55 | 显示全部楼层

回帖奖励 +3 鱼币

zc~领下币
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-4-30 19:59:38 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-4-30 19:59:55 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-4-30 20:06:14 | 显示全部楼层

回帖奖励 +3 鱼币

元豪 发表于 2023-4-30 19:59
@sfqxx @歌者文明清理员 @学习编程中的Ben @isdkz 这里有币

来了,来个一发入魂
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-4-30 20:07:15 | 显示全部楼层
isdkz 发表于 2023-4-30 20:06
来了,来个一发入魂

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-4-30 20:08:16 | 显示全部楼层
币!!!!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2023-4-30 20:10:26 | 显示全部楼层

hhh这都领不到
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-4-30 20:14:51 | 显示全部楼层

回帖奖励 +3 鱼币

支持,领币~
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 2023-4-30 20:22:13 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-4-30 20:22:45 | 显示全部楼层

回帖奖励 +3 鱼币

元豪 发表于 2023-4-30 19:59
@sfqxx @歌者文明清理员 @学习编程中的Ben @isdkz 这里有币

应该说“@歌者 白嫖”@一点沙
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-4-30 20:46:05 | 显示全部楼层

回帖奖励 +3 鱼币

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-4-30 20:59:29 From FishC Mobile | 显示全部楼层

回帖奖励 +3 鱼币

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-5-1 00:03:07 | 显示全部楼层

回帖奖励 +3 鱼币

666
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-5-1 10:54:20 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-5-1 10:54:46 | 显示全部楼层
币1第二次
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-5-1 10:56:09 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-5-1 11:01:56 | 显示全部楼层

回帖奖励 +3 鱼币

?还不中?
币1第三次
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-28 16:18

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表