我做了一个数学测验(simple.asks 10数学问题给用户)。我让用户使用for循环进行了3次测验,因为我需要为每个学生提供3个分数。我决定将3个分数存储在一个列表中,因为每次for循环运行时变量“得分”都会改变用户进行测验..我发现很难将每个分数一个接一个地附加在同一个列表中。
我已经阅读了一些类似问题的其他回复,答案是使用索引,但我不确定如何将它们用于我的问题,因为我没有在列表中添加特定位置我的3个不同的分数,我需要一个接一个地添加它们。
以下是我需要处理的代码中的部分:
hscore = []
hscore.append(score)
print("This is hscore: ",hscore)
score = 0
对不起,这是我第一次使用这个网站所以..我不知道如何正确地展示我的代码。但正如你所看到的......我有我想要附加的空列表。得分是变化3次的变量,打印只是为了检查它是否正常工作。每次for循环再次运行时,我必须将分数设置为0,因此分数不会加在一起。
答案 0 :(得分:1)
你应该在循环中声明所有变量,因为看起来你将得分重置为0。 作为建议,尝试使用字典来更好地处理这类信息。 像这样:
scores={}
scores[Name]=[]
## Your code block here
## or for loop
scores[Name].append(score)
print scores[Name]
分数将能够保持每个学生的分数以及他们的分数列表。希望有所帮助! :)