Не работает исключение ValueError
я хочу узнать почему у меня не работает исключение. Судя по примеру из книги у меня должно вывести "Ошибка ввода :(", но вместо этого ошибка. Простите если вопрос глупый, просто я не смог найти ответ.
Traceback (most recent call last):
File "C:\Users\dtita\PycharmProjects\pythonProject\venv\My successes.py", line 4, in <module>
b = int(b)
ValueError: invalid literal for int() with base 10: 'два'
a = input("Введите число: ")
b = input("Введите ещё одно: ")
a = int(a)
b = int(b)
try:
print(a/b)
except (ZeroDivisionError, ValueError):
print("Ошибка ввода :(")
print(a/b)
Ответы (1 шт):
Автор решения: ladmol
→ Ссылка
Надо было просто убрать последнюю строчку с print(). Не забывай, что всё, что может не получиться, нужно записывать в блок try except. У тебя может не получиться не только деление(делить на 0 нельзя), но и конвертация из строки в число(строку "два" не очень получается конвертировать в число, верно? :D ), поэтому блок с конвертацией строки в число тоже нужно перенести в блок try except. Удачи!
a = input("Введите число: ")
b = input("Введите ещё одно: ")
try:
a = int(a)
b = int(b)
print(a/b)
except (ZeroDivisionError, ValueError):
print("Ошибка ввода :(")