Ich schreibe ein Quiz und nachdem der Schüler das Quiz abgeschlossen hat, versuche ich beim Speichern der Ergebnisse sicherzustellen, dass die letzten drei Punkte eines Schülers in seinen Namen gespeichert werden. Wenn sie noch kein Quiz abgeschlossen haben, wird eine neue Zeile für sie in der Textdatei geschrieben.ValueError: mehr als einen Wert zum Entpacken benötigt
filename = (str(class_number) + 'txt')
with open(filename, 'a') as f:
f.write(str(name) + " : " + str(score) + '\n')
with open(filename) as f:
f.seek(0)
scores = f.readline()
from collections import deque
for line in scores:
name, score = line.rstrip('\n').split(',')
score= int(score)
if name not in filename:
filename[name] = deque(maxlen=3)
temp_q = filename[name]
temp_q.append(str(score))
filename[name] = temp_q
filehandle = open (filename, 'w')
for key,values in filename.iteritems():
filehandle.write(name + ',')
filehandle.write (','.join(list(values)) + '\n')
filehandle.close()
Und das ist der Fehler:
name, score = line.rstrip('\n').split(',')
Value error need more than 1 value to unpack
Haben Sie versucht zu sehen, was "line" ist? – jonrsharpe
Mögliches Duplikat von [ValueError: benötigt mehr als 1 Wert zum Entpacken] (https://StackOverflow.com/questions/19749077/valueerror-need-more-than-1-value-to-unpack) –