Попытка создать интерфейс, управляемый меню, для ведения списка оценок

#python #menu

#python #меню

Вопрос:

Я пытаюсь создать интерфейс, управляемый меню, который поддерживает список результатов. После выбора 3 и добавления оценки в список я нажимаю 4 в меню, и это выдает эту ошибку:

Ошибка типа: ‘>’ не поддерживается между экземплярами ‘str’ и ‘float’

menu = «»» Механизм подсчета очков:

1: Выход
2: Список результатов на данный момент
3: Добавление результатов
4: Отображение самых высоких и самых низких результатов

 scores = [85.30, 85.20, 21.99]

done = False

while not done:

    print(menu)

    selection = input('Please enter a selection between 1 and 4: ')
    print()

    if selection == '1':
        done = True
    elif selection == '2':
        print()
        for score in scores:
            print('Scores recorded so far: {:.2f}'.format(float(score)))
    elif selection == '3':
        print()
        addScore = input('Please enter a score between 0 and 100: ')
        scores.extend(addScore)
    elif selection == '4':
        print('Highest Score: ', max(scores))
        print('Lowest Score: ', min(scores))
    else:
        print()
        print('{} Invalid entry. Please enter a selection
1,2,3,4'.format(menu))
  

Ответ №1:

В каждом экземпляре input() метода вам нужно будет преобразовать пользовательский ввод из строки в int или float. Поэтому вместо:

 addScore = input('Please enter a score between 0 and 100: ')
    scores.extend(addScore)
  

вам понадобится что-то вроде:

 addScore = int(input('Please enter a score between 0 and 100: '))
    scores.extend(addScore)
  

или:

 addScore = input('Please enter a score between 0 and 100: ')
    scores.extend(int(addScore))
  

Комментарии:

1. попробуйте отформатировать свой ответ, выбрав строки скрипта Python, а затем нажмите кнопку «{}»

2. ОК. Спасибо, Махмунд