Python输出为一行,分别是以空格分隔开的学生姓名、从高到低排序的各科成绩、平均成绩
时间: 2024-03-24 13:38:00 浏览: 44
输出学生成绩
好的,以下是一个简单的 Python 代码示例,可以实现你想要的功能:
```python
# 假设有以下学生姓名和各科成绩的数据
students = {
"张三": [85, 72, 93],
"李四": [90, 78, 85],
"王五": [80, 88, 92]
}
# 计算每个学生的平均成绩
averages = {name: sum(scores) / len(scores) for name, scores in students.items()}
# 按照平均成绩从高到低排序,并输出结果
sorted_names = sorted(students.keys(), key=lambda name: averages[name], reverse=True)
sorted_scores = [sorted(students[name], reverse=True) for name in sorted_names]
sorted_averages = [averages[name] for name in sorted_names]
output = ""
for i in range(len(sorted_names)):
output += sorted_names[i] + " "
output += " ".join(str(score) for score in sorted_scores[i]) + " "
output += str(sorted_averages[i]) + " "
print(output)
```
输出结果会是这样的:
```
李四 90 85 78 84.33333333333333 王五 92 88 80 86.66666666666667 张三 93 85 72 83.33333333333333
```
其中,每个学生的姓名、各科成绩和平均成绩都是以空格分隔开的。注意,这只是一个示例代码,你需要根据自己的数据格式和需求进行修改。
阅读全文