Вопрос Вопрос по Python

Регистрация
28 Апр 2013
Сообщения
89
Репутация
0
Спасибо
0
Монет
0
Начал учить пайтон несколько дней назад, решил написать программу, которая высчитывает возраст и столкнулся с проблемой. Программа возраст спрашивает, но если написать в input вместо числа букву или какой-либо другой символ, то логично, это выдаст ошибку. Так вот, как сделать так, чтобы при вводе чего-то, что не является числом, появлялась не ошибка, а надпись "Вы ввели не число, попробуйте снова" и программа спрашивала возраст заново?Вот код





l = int(input('Введите возраст: '))





if l < 18:





print('К сожалению, водить автомобиль Вам рановато')





else:





print('Замечательно. Вы уже можете водить автомобиль')
 
В Python существует обработка исключений - с помощью которой ты можешь задавать собственный код, выполняемый при появлении определённой ошибки. В том числе, сообщить, что введены неправильные данные и запросить новый ввод.
 
1) Исключения:
try
accept
2) можно еще прежде чем интовать, проверить из чего состоит объект, в вашем случае введенная информация должна представлять из себя последовательность цифр, для этого есть функция isdigit()., которая возвращает True, если объект состоит только из цифровых символов и False, если иначе.
 
age = input("Input your age: ")

while not age.isnumeric():

age = input("Wrong input data. Please try again and input only positive integer value: ")

if int(age) < 18:

print("Unfortunately, you're too young to drive a car")

else:

print("Great! You're allowed to drive a car")
 
Назад
Сверху