Python. Если ввожу цифры, то алгоритм работает. Если ввожу текст или смесь текста и цифр, то выдает ошибку

Рейтинг: 0Ответов: 1Опубликовано: 30.07.2025
height=int(input("Рост ребенка?:"))

if height>=120:
    print('Ребенок может кататься самотоятельно')
elif height<120:
    print ('Ребенку требуется сопровождение взрослого.')

else:
    print ("Ввели некорректные данные!")

Ответы

▲ 0

Вместо команды

height=int(input("Рост ребенка?:"))

которая вам делает проблемы, вы можете

  • сначала читать строку на вводе без применения функции int(),
  • затем проверить, может ли строка быть интерпретирована как целое число
    (с помощью метода .isdecimal() - см. например str.isdecimal() в Тип текстовой последовательности str),
  • и только если эта проверка была удачной, применить к этой строке функцию int():
height = input("Рост ребенка?:")

if height.isdecimal():
    height = int(height)           # на вводе было целое число, и применяете int()
    # Продолжаете вашу программу
else:
    print("Ввели некорректные данные!")

Целая программа:

height = input("Рост ребенка: ")

if height.isdecimal():
    height = int(height)
    if height >= 120:
        print('Ребенок может кататься самостоятельно.')
    else:
        print('Ребенку требуется сопровождение взрослого.')
else:
    print("Ввели некорректные данные!")