• Python:Traceback
    Проблема:выдает Traceback (most recent call last):
    File "C:\Users\Eagle2002\Desktop\python\fourth.py", line 5, in
    opt = h - w
    TypeError: unsupported operand type(s) for -: 'str' and 'str'
    Программа ниже:

    print('Контроль веса')
    print('Введите ваш рост и вес')
    h = input('Рост(см)->')
    w = input('Вес(кг)->')
    opt = h - w
    if w == opt:
    print('Ваш вес оптимален!')
    elif w < opt:
    rly = opt - w
    print('Вам надо поправиться на', rly, 'кг.')
    elif w > opt:
    rly = w - opt
    print('Вам надо похудеть на', rly, 'кг.')

Ответы 1

  • Ошибка в том, что Пайтон - язык со строгой динамической типизацией, т.е. тип переменной определяется при первом присваивании и в дальнейшем не может быть изменен.  Оператор input читает строку символов и h,w получаеют символьный тип. Вы пытаетесь над ними выполнить арифметическую операцию и получаете ошибку.Попробуйте такую запись:h = int(input('Рост(см)->')) w = int(input('Вес(кг)->'))
  • Добавить свой ответ

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years