Python:如何让for循环每次打印列表中随机生成的项?

2024-10-01 00:31:32 发布

您现在位置:Python中文网/ 问答频道 /正文

编辑:随机“循环”输出固定。现在我收到“列表索引超出范围错误”。在

我打算做一个评分程序,是基于随机产生的字母成绩(a-F)。该程序要求作业量,并打印带有字母等级的作业编号。它还应该找到随机生成的分数的平均分数。输出应该如下所示:

Assignment 1 grade is an F
Assignment 2 grade is a C
Assignment 3 ...
The average is a ...

我有一个随机生成字母等级的列表。我很难设置代码来找到字母等级的平均值。而且,我的循环并不是每次都像它应该的那样吐出一个新的字母等级。以下是我的一些代码:

^{pr2}$

它目前打印:

Assignment 1 grade is an F
Assignment 2 grade is an F
Assignment 3 grade is an F...

Tags: 代码程序an编辑列表is错误字母
2条回答

您只需要在每次循环迭代到新元素时进行随机选择。在

numberlist = ["A", "B", "C", "D", "F"]

for i in range(total):
    choice = random.choice(numberlist)
    print('The grade for assignment {i} is a {mark}'.format(i=i+1, mark=choice))

您应该将随机数生成放在循环中:

for i in range(total):
    numberindex = random.randint(0, 5) ####here!
    print("The grade for assignment", count, \
      "is a {}".format(numberlist[numberindex]))
    count = count + 1

相关问题 更多 >