← Все вопросы
TypeError: '>' not supported between instances of 'str' and 'int' — сравниваю input с числом
7
Делаю проверку возраста, а питон выдаёт TypeError: '>' not supported between instances of 'str' and 'int'.
age = input("Сколько тебе лет? ")
if age > 17:
print("Совершеннолетний")
Почему нельзя сравнить? Я же ввожу число.
2 ответа
13
✓ Принятый ответ — помог автору
input() всегда возвращает строку, даже если ты набрал цифры. А строку и число питон сравнивать через > не умеет — отсюда ошибка.
Преобразуй ввод в число через int():
age = int(input("Сколько тебе лет? "))
if age > 17:
print("Совершеннолетний")
Теперь age — целое число, и сравнение работает.
4
Маленький нюанс на будущее: если пользователь введёт не число (например, "двадцать"), int() сам упадёт с ValueError. Для учебных задач это норм, но если хочешь надёжнее — оборачивай в try/except.
Ваш ответ
Войдите, чтобы ответить на вопрос.