Python с 2 продолжаются через некоторое время

Я попытался обработать исключение и застрял в моей первой программе, в этой программе мой первый продолжить в то время как работает, но второй не продолжает цикл

print("hello to divide")
o = "y"
while o == "y":
    try:
        x = int(input("enter first no. = "))
        y = int(input("enter second no. = "))
    except:
        print("please enter numeric value")
        continue
    try:
        z = x/y
        print(str(x) +"/"+str(y)+"="+str(z))
    except:
        print("please do not divide with 0(zero)")
        continue

    finally:
        o = input("do you want to do it again (y/n)? = ")

Второе, кроме, работает нормально, но после вывода сообщения оно переходит к оператору finally

пожалуйста помоги???

1 ответ

Решение

Из документов:

Предложение finally всегда выполняется перед выходом из try утверждение, произошло ли исключение или нет. Когда произошло исключение в try пункт и не был обработан except пункт (или это произошло в except или же else пункт), он поднимается после finally пункт был выполнен. finally Предложение также выполняется "на выходе", когда любое другое предложение оператора try оставлено через break , continue или же return заявление. Более сложный пример:

Я уверен, что вы просто хотите:

print("hello to divide")
o = "y"
while o == "y":
    try:
        x = int(input("enter first no. = "))
        y = int(input("enter second no. = "))
    except:
        print("please enter numeric value")
        continue
    try:
        z = x/y
        print(str(x) +"/"+str(y)+"="+str(z))
    except:
        print("please do not divide with 0(zero)")
        continue

    o = input("do you want to do it again (y/n)? = ")
Другие вопросы по тегам