有若干个学生的数据,每个学生包括学号姓名和三门功课的成绩。请计算每个学生3门功课平均成绩,然后输出每个学生的数据
时间: 2023-12-15 19:40:47 浏览: 98
好的,这是一个简单的数据处理问题。需要明确输入数据的格式和输出数据的格式。
假设输入数据的格式如下:
```
学号,姓名,语文成绩,数学成绩,英语成绩
1001,张三,85,76,90
1002,李四,92,88,87
1003,王五,78,85,80
```
输出数据的格式如下:
```
学号,姓名,语文成绩,数学成绩,英语成绩,平均成绩
1001,张三,85,76,90,83.67
1002,李四,92,88,87,89.00
1003,王五,78,85,80,81.00
```
以下是实现代码,可以参考一下:
```python
# 定义一个学生类
class Student:
def __init__(self, id, name, chinese, math, english):
self.id = id
self.name = name
self.chinese = chinese
self.math = math
self.english = english
self.average = (chinese + math + english) / 3
# 定义一个函数,用于读取输入数据并处理
def read_students(filename):
students = []
with open(filename, 'r') as f:
for line in f:
data = line.strip().split(',')
id = int(data[0])
name = data[1]
chinese = float(data[2])
math = float(data[3])
english = float(data[4])
student = Student(id, name, chinese, math, english)
students.append(student)
return students
# 定义一个函数,用于输出处理后的数据
def print_students(students):
print('学号,姓名,语文成绩,数学成绩,英语成绩,平均成绩')
for student in students:
print(f'{student.id},{student.name},{student.chinese},{student.math},{student.english},{student.average:.2f}')
# 读取输入数据并处理
students = read_students('students.csv')
# 输出处理后的数据
print_students(students)
```
注意:以上代码仅供参考,具体实现方式可能因为数据格式或其他原因而略有不同,需要根据实际情况进行调整。
阅读全文