Error when Executing a python code
Question:
I am new to Python programming. I am writing the code below, and when I execute it the IDE returns an error message : TypeError: unorderable types: str() < int()
Code below :
print("What is your name?")
name = input()
print("What is your age?")
age = input()
if name=='Jack':
print ("Hello Jack")
elif age<12:
print("You are not Jack")
The error
elif age<12:
TypeError: unorderable types: str() < int()
Answers:
input()
returns a string. You cannot directly compare a string to an integer.
Convert age
to an integer by calling int()
:
age = int(input())
Tip:
print('something')
input()
# same as
input('something')
Then, input
returns in python 3 a string. And you cannot compare a string with an int.
It’s like if you were doing '5' < 2
. You need to transform '5'
into an int. And it’s pretty easy: int('5') == 5
name = input("What is your name?")
age = input("What is your age?")
if name == 'Jack':
print("Hello Jack")
elif int(age) < 12:
print("You are not Jack")
Matt
I am new to Python programming. I am writing the code below, and when I execute it the IDE returns an error message : TypeError: unorderable types: str() < int()
Code below :
print("What is your name?")
name = input()
print("What is your age?")
age = input()
if name=='Jack':
print ("Hello Jack")
elif age<12:
print("You are not Jack")
The error
elif age<12:
TypeError: unorderable types: str() < int()
input()
returns a string. You cannot directly compare a string to an integer.
Convert age
to an integer by calling int()
:
age = int(input())
Tip:
print('something')
input()
# same as
input('something')
Then, input
returns in python 3 a string. And you cannot compare a string with an int.
It’s like if you were doing '5' < 2
. You need to transform '5'
into an int. And it’s pretty easy: int('5') == 5
name = input("What is your name?")
age = input("What is your age?")
if name == 'Jack':
print("Hello Jack")
elif int(age) < 12:
print("You are not Jack")
Matt