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' Программа ниже: pr...
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, 'кг.')
Ответ(ы) на вопрос:
Ошибка в том, что Пайтон - язык со строгой динамической типизацией, т.е. тип переменной определяется при первом присваивании и в дальнейшем не может быть изменен. Оператор input читает строку символов и h,w получаеют символьный тип. Вы пытаетесь над ними выполнить арифметическую операцию и получаете ошибку.
Попробуйте такую запись:
h = int(input('Рост(см)->'))
w = int(input('Вес(кг)->'))
Не нашли ответ?
Похожие вопросы