Я новичок в программировании Python. Ниже приведен написанный код, и он отлично работает, когда я печатаю любое число c di git и получаю желаемый результат, как ожидалось, но проблема возникает, когда я ввожу строку (что угодно, кроме целого числа / числа с плавающей запятой) вместо того, чтобы дать мне просто оператор except, он также дает мне ошибку, которой я не хочу. Итак, я хочу, чтобы когда пользователь вводил что-либо, кроме цифр numeri c, ему должно быть предложено сообщение, например: «Недопустимый ввод. Введите число, пожалуйста» вместо ошибки, которую я получаю после оператора except print в конце концов. Пожалуйста, помогите.
hours_string = input("Enter Hours: ")
rate_string = input("Enter Rate: ")
try:
hours_float = float(hours_string)
rate_float = float(rate_string)
except:
print("Invalid input. Enter a number please.")
result = hours_float * rate_float
print("Pay",result)
Это ошибка, которую я получаю. Если я ввожу строку, я просто должен получить оператор except. Вот и все. Никакой другой ошибки. Как мне добраться до sh?
Enter Hours: 9
Enter Rate: entered string by mistake
Invalid input. Enter a number please.
Traceback (most recent call last):
File "<string>", line 9, in <module>
NameError: name 'rate_float' is not defined