Итак, я пытаюсь получить два входа, которые отделяют имена пользователей по кредитным часам, и каждый раз после выхода из цикла я получаю неожиданный EOF.eval() Неожиданный EOF при разборе
fresh = []
soph = []
jun = []
sen = []
def classify(cr, un):
if cr <= 27:
fresh.append(un)
print(un, 'is a freshman.\n')
elif 28 <= cr <= 56:
soph.append(un)
print(un, 'is a sophomore.\n')
elif 57 <= cr <= 84:
jun.append(un)
print(un, 'is a junior.\n')
elif cr >= 85:
sen.append(un)
print(un, 'is a senior\n')
def main():
un = input('Student: ')
cr = eval(input('Credits: '))
while un and cr != '':
un = input('Student: ')
cr = eval(input('Credits: '))
classify(cr, un)
В частности, ошибка, я получаю:
File "./class.py", line 58, in <module>
main()
File "./class.py", line 51, in main
cr = eval(input('Credits: '))
File "<string>", line 0
Я не уверен, если это связано (или, если это просто то, что я с видом), но я должен пройти через кредит для того, чтобы выйдите из цикла. Не следует ли выйти из цикла после нажатия, когда появляется Студент из-за оператора И?
Редактировать: добавить классификацию func. Я не думаю, что это проблема, хотя я попытался ее удалить, и это все равно возвращает меня в EOF.
вы знаете, что 'eval' делает? – murgatroid99
'eval (input())' кажется неплохой идеей. Он позволяет пользователю выполнить произвольный код, введя его в приглашении. – khelwood
Где ваша классификация() – Ajay