Я не понимаю, почему мой код не работает. скажем, файл, который я пытаюсь открыть, содержит следующее:
Luke,89,94,81,97
Eva,40,50,65,90
Joseph,55,58,54,99
Oliver,73,74,89,91
И это функция, которую я написал:
def my_func(myfile):
out_dict = {}
somefile = open(myfile)
data = somefile.readlines()
for line in data:
name,course1,course2,course3,course4 = line
out_dict[name] = [float(course1), float(course2), float(course3), float(course4)]
return out_dict
print(my_func("newfile.txt"))
Я пытаюсь добавить каждую строку в словарь, в котором имя каждого человека является ключом. Моя проблема в строке 6, где я пытаюсь назначить 5 значений для 5 переменных. Я получаю сообщение об ошибке «слишком много значений для распаковки (ожидается 5)». но когда я использую эту строку кода вместо оригинальной, она работает:
name,course1,course2,course3,course4 = line.split(',')
Насколько я знаю, что-то вроде этого работает:
v,x,z,y = "John",1,2,3
Но почему не оригинал код в строке 6 тоже работает?