/
IvanKhabarov
/
python
Обзор
Документация
Войти
/
IvanKhabarov
/
python
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
Lections/Lesson13/1-Exec_situation/task_except_2.py
26 строк
1 KB
Ivan-Khabarov
Added new tasks
09 окт 2024, 19:53
09 окт 2024, 19:53
6190c64
Код
Авторство
О чём код?
# ● Цикл while для обработки ошибок ввода # Иногда необходимо получить данные повторно, если попытка не удалась. В случае с # пользователем можем спрашивать его бесконечно, пока не добъёмся ввода целого # числа. def get(text: str = None) -> int: while True: try: num = int(input(text)) break except ValueError as e: print(f'Ваш ввод привёл к ошибке ValueError: {e}\n' f'Попробуйте снова') return num if __name__ == '__main__': number = get('Введите целый делитель: ') print(f'100/{number} = {100 / number}') # Бесконечный цикл while True можно прервать командой break. В случае # преобразования ввода пользователя к целому без ошибок она завершит цикл и # вернёт число из функции. При появлении ошибки дальнейшие строки не # выполняются, сразу переходим в блок except. Обработав ошибку мы возвращаемся # к началу цикла, следовательно повторяем запрос.