извините, если это ужасный вопрос, но я действительно новичок в программировании. Я пытаюсь выполнить небольшую небольшую пробную программу.Сравнение чисел дает неправильный результат в Python
Если я ввожу любое значение менее 24, оно печатает заявление «Вы старое ...». Если я введу какое-либо значение, превышающее 24 (ТОЛЬКО до 99), он печатает инструкцию «вы старая».
Проблема в том, что если вы вводите значение 100 или больше, оно печатает «Вы станете старше, чем вы это знаете». заявление.
print ('What is your name?')
myName = input()
print ('Hello, ' + myName)
print ('How old are you?, ' + myName)
myAge = input()
if myAge > ('24'):
print('You are old, ' + myName)
else:
print('You will be old before you know it.')
измените его на 'int (myAge)> 24:' и он должен работать. – Keiwan
"* если вы вводите значение 100 или больше *" - действительно? Что насчет 263? –
Чтобы развернуть комментарий Keiwan - '' 24'' - это строка, а не число, поэтому, когда вы делаете сравнения с ней, что-то вроде '100 '' _ _ _ before_ '24'', потому что '' 1'' приходит раньше ' '2''. Это называется [_lexicographic ordering_] (https://en.wikipedia.org/wiki/Lexicographic_order). – birryree