Найти - Пользователи
Полная версия: Нужна помощь в дописании кода
Начало » Python для новичков » Нужна помощь в дописании кода
1
Alexlki
Нужно добавить проверку на то, что пользователь ввел именно числа, а не строку/буквы. При вводе букв выдает ValueError. Не понимаю, в какое место прописывать except ValueError, тк пробовал написать в разных частях кода. После введения первого числа все работало, а если написать буквы при введении второго числа, то пишет в консоли ValueError
Вот код:
 a = "Введите первое значение : "
b = "Выберите действие '+', '-', '*', '/' : "
c = "Введите второе значение : "
r = "Результат : "
e = "Ошибка : "
x = "Введите 'yes', чтобы продолжить, или любую клавишу, чтобы завершить: "
prodolzhit = 'yes'
while prodolzhit == 'yes':
    a_num = int(input(a))
    b_num = input(b)
    c_num = int(input(c))
    if b_num == '+':
        print(r, a_num + c_num)
    elif b_num == '-':
        print(r, a_num - c_num)
    elif b_num == '*':
         print(r, a_num * c_num)
    elif b_num == '/':
        if b_num == "/":
            try:
                answer = a_num / c_num
            except ZeroDivisionError:
                print("Деление на 0 недопустимо")
    else:
        print(e)
    prodolzhit = input(x)
AD0DE412
все что вводится в консоль при использовании встроенной функции input() преобразуется в тип str. Это происходит в том числе и с числами.
S.isdigit() Состоит ли строка из цифр
py.user.next
Alexlki
  
while prodolzhit == 'yes':
    a_num = int(input(a))
    b_num = input(b)
    c_num = int(input(c))
  
while prodolzhit == 'yes':
    try:
        a_num = int(input(a))
    except ValueError:
        print('incorrect a')
        continue
    b_num = input(b)
    if b_num not in '+-*/':
        print('incorrect b')
        continue
    try:
        c_num = int(input(c))
    except ValueError:
        print('incorrect c')
        continue
Alexlki
Спасибо большое)
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB