print("how old are you")
age = input(">")
if age >= 24:
print("you are getting old")
print (age)
else:
print("i don't care")
print (age)
これは私が得ているエラーです:
if age >= 24:
TypeError: unorderable types: str() >= int()
print("how old are you")
age = input(">")
if age >= 24:
print("you are getting old")
print (age)
else:
print("i don't care")
print (age)
これは私が得ているエラーです:
if age >= 24:
TypeError: unorderable types: str() >= int()
Python 3 では、input()
常に文字列値を返します。int()
タイプを使用して変換します。
if int(age) >= 24:
文字列値と int は順序付けできません。
>>> '24' > 23
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: unorderable types: str() > int()
入力を変換できない場合、例外int()
がスローされる可能性があることに注意してください。ValueError
>>> int('Why do you want to know my age?')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: invalid literal for int() with base 10: 'Why do you want to know my age?'
age
int ではなく文字列です。int にするには、次のint()
関数を使用します。
print("how old are you")
age = input(">")
if int(age) >= 24:
print("you are getting old")
print (age)
...
次の行に注意してください。
if int(age) >= 24: