我想要做的是创建一个2维列表。外部列表将是学生数据,内部列表是学生的名字,其中包含他们所有的考试成绩。 如果他们的名字(studentName)已经在外部列表中,那么它只是将另一个finalScore附加到适当的内部列表中。 但是,我不断收到错误,我不能追加到最后一行中的字符串。如何附加到2维列表的最后一个元素?
with open('class_three.txt') as file:
for line in file:
studentName, finalScore = line.split(": ")
finalScore = finalScore.rstrip("\n")
studentDataList = [[0 for x in range(3)] for x in range(30)]
if studentName in studentDataList:
positionOfName = studentDataList.index(studentName)
studentDataList[positionOfName].append(finalScore)
else:
studentDataList.append(studentName)
studentDataList[-1].append(finalScore)
文件class_three.txt看起来像这样:
jak: 1
kate: 9
niki: 10
abi: 5
mart: 2
zeddy: 7
jak: 5
jak: 3
kate: 5
我能做些什么来解决我遇到了错误?有什么方法可以改进我正在尝试做的方法吗?任何建议将非常感激。我也很抱歉,如果这是一个重复的问题。
'studentDataList.append(studentName)'添加一个字符串的'结束studentDataList',当然''studentDataList [-1] .append(finalScore)'失败;你想要像'studentDataList.append([studentName,finalScore])''吗? – jonrsharpe