随机生成的各科成绩,,60分以下为10-15%之间;60-90分的占70-75%之间;90分以上10%-15%之间
望采纳,已帮你完成代码
# 按照一定占比生成各科成绩,60分以下为12%;60-90分的占76%;90分以上12%
import random
def generate_score():
import random
# 生成一个 0 到 1 之间的随机小数表示概率
random_num = random.random()
# 如果随机数小于 12%,则生成小于 60 的随机数
if random_num < 0.12:
score = random.randint(0, 60)
elif random_num < 0.88:
score = random.randint(60, 90)
else:
score = random.randint(90, 100)
return score
# 生成 100 个学生的成绩
scores = [generate_score() for _ in range(100)]
你就用random函数随机生成就是了,根据要生成的总的分数个数,先分配一下每个分数段的最少和最多分数个数。因为按你这个分配比例,在两个分数段达到最大个数以后,剩下的一个分数段也能达到最小比例。所以只要保证每个分数段的个数不超过最大个数,分数的总数不超过总的分数个数就可以了。