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()
Asked By: afeefkhateeb

||

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())
Answered By: John Gordon

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

Answered By: math2001
Categories: questions Tags:
Answers are sorted by their score. The answer accepted by the question owner as the best is marked with
at the top-right corner.