我想要做的是創建一個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