学校所有课程每学期允许多次考试,学生可随时参加考试,系统自动将每次考试的成绩添加到Excel文件(包含三列:姓名、课程、成绩)中,期未要求统计所有学生每门课程的最高成绩。 1、编写程序,模拟生成若干学生的成绩并写入Excel文件,其中学生姓名和课程名称均可重复,也就是允许出现同一门课程多次成绩; 2、统计所有学生每门课程的最高成绩,并写入新的Excel文件。
时间: 2024-01-04 19:01:58 浏览: 523
好的,我明白了你的问题。这是一个关于Excel文件操作的问题,需要用到Python中的pandas库。以下是代码实现:
1、生成若干学生的成绩并写入Excel文件:
```python
import pandas as pd
import random
# 学生姓名列表和课程列表
name_list = ['张三', '李四', '王五', '赵六', '钱七']
course_list = ['语文', '数学', '英语', '物理', '化学']
# 生成成绩数据
data = {'姓名': [], '课程': [], '成绩': []}
for i in range(50):
name = random.choice(name_list)
course = random.choice(course_list)
score = random.randint(60, 100)
data['姓名'].append(name)
data['课程'].append(course)
data['成绩'].append(score)
# 将数据写入Excel文件中
df = pd.DataFrame(data)
df.to_excel('scores.xlsx', index=False)
```
2、统计每门课程的最高成绩并写入新的Excel文件:
```python
# 读取数据
df = pd.read_excel('scores.xlsx')
# 统计每门课程的最高成绩
df_max = df.groupby(['姓名', '课程']).max().reset_index()
# 将数据写入Excel文件中
df_max.to_excel('max_scores.xlsx', index=False)
```
以上就是解决这个问题的代码实现。
阅读全文