随机生成15名同学3门成绩的数据 成绩范围为1 -100,把该数据压缩成9名同学的5门成绩
时间: 2024-10-15 14:21:01 浏览: 29
首先,我们可以创建一个包含15名同学和3门成绩的列表,每个同学有三个分数。然后通过随机数生成器来分配成绩,范围在1到100之间。接着,为了压缩数据,我们需要选择一些策略。一种常见的方法可能是选取每个同学在这三门课程中的最高分、最低分和平均分,以及另外两门课程中的任意分数。这将得到每名同学的5项成绩,代表他们的整体学术水平。
下面是一个Python示例:
```python
import random
# 创建初始15名同学和3门成绩的数据
students = [{"name": f"学生{i}", "scores": [random.randint(1, 100) for _ in range(3)]} for i in range(15)]
# 计算每个同学的压缩成绩
compressed_students = []
for student in students:
top_score = max(student["scores"])
bottom_score = min(student["scores"])
avg_score = sum(student["scores"]) / len(student["scores"])
selected_scores = [top_score, bottom_score, avg_score]
# 随机选择另外两门课的成绩
two_more_scores = sorted(random.sample(student["scores"], 2))
selected_scores.extend(two_more_scores)
compressed_students.append({
"name": student["name"],
"scores": selected_scores,
})
print("压缩后的9名同学的5门成绩数据:", compressed_students)
```
请注意,由于是随机生成,每次运行结果可能会不同。
阅读全文