Необходима помощь с кодом относительно петель

голоса
-1
print(Descriptive Analytics:\n\t*1. Summary\n\t*2. Time Series\n\t*3. 
Trend Lines\n\t*4. Moving Averages\nPredictive Analytics:\n\t*5.Linear 
Regression Model\n\t*6.Non Linear Regression Model)

while True:
try:
    choice = (input(Step 2: Please choose an option:))
except ValueError:
    print(Sorry, you've entered an invalid input. Please try again!)
if choice in (1,2,3,4,5,6):
        break
if choice == 1:
   print(Descriptive Analytics: Summary)
elif choice == 2:
   print(Descriptive Analytics: Time Series)
elif choice == 3:
   print(Descriptive Analytics: Trend Lines)
elif choice == 4:
   print(Descriptive Analytics: Moving Averages)
elif choice == 5:
   print(Predictive Analytics: Linear Regression Model)
elif choice == 6:
   print(Predictive Analytics: Non Linear Regression Model)

Можно ли обнаружить ошибку в этом коде? До сих пор, цикл работает эффективно, но не печатает строку «Извините, вы ввели неверный ввод. Пожалуйста, попробуйте еще раз!

Задан 07/11/2018 в 20:09
источник пользователем
На других языках...                            


1 ответов

голоса
0

Вы должны использовать надлежащий уровень отступа и убедитесь , что ваш код выполняется в elseблоке, а не exceptблокировать,

while True:
    try:
        choice = (input("Step 2: Please choose an option:"))
    except ValueError:
        print("Sorry, you've entered an invalid input. Please try again!")
    else:
        if choice == "1":
           print("Descriptive Analytics: Summary")
        elif choice == "2":
           print("Descriptive Analytics: Time Series")
        elif choice == "3":
           print("Descriptive Analytics: Trend Lines")
        elif choice == "4":
           print("Descriptive Analytics: Moving Averages")
        elif choice == "5":
           print("Predictive Analytics: Linear Regression Model")
        elif choice == "6":
           print("Predictive Analytics: Non Linear Regression Model")
        if choice in ("1", "2", "3", "4", "5", "6"):
            break
Ответил 08/11/2018 в 00:18
источник пользователем

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more