2.从scores.txt文件内读取信息,分别输出三个人的平均成绩和三个科目的平均成绩。

可以使用以下代码实现从scores.txt文件读取信息,并计算三个人的平均成绩和三个科目的平均成绩:

```python
def read_scores_file(file_path):
    # 读取文件并返回一个包含所有成绩的列表
    scores = []
    with open(file_path, 'r') as file:
        for line in file:
            line = line.strip()
            scores.append(list(map(float, line.split())))
    return scores

def calculate_student_avg(scores):
    # 计算每个学生的平均成绩并返回一个包含平均成绩的列表
    student_avg = []
    for student in scores:
        avg = sum(student) / len(student)
        student_avg.append(avg)
    return student_avg

def calculate_subject_avg(scores):
    # 计算每个科目的平均成绩并返回一个包含平均成绩的列表
    subject_avg = []
    num_subjects = len(scores[0])
    for i in range(num_subjects):
        subject_scores = [student[i] for student in scores]
        avg = sum(subject_scores) / len(subject_scores)
        subject_avg.append(avg)
    return subject_avg

# 文件路径
file_path = 'scores.txt'

# 从文件中读取信息
scores = read_scores_file(file_path)

# 计算每个学生和每个科目的平均成绩
student_avg = calculate_student_avg(scores)
subject_avg = calculate_subject_avg(scores)

# 输出结果
for i, avg in enumerate(student_avg):
    print(f'Student {i+1} average score: {avg}')
for i, avg in enumerate(subject_avg):
    print(f'Subject {i+1} average score: {avg}')
```

请确保文件`scores.txt`存在,并按照每行一个学生的成绩,每个成绩之间使用空格分隔的格式存储信息。

相关代码参考