I believe what you are trying to do is something like the following. [code] def isIntLike(x): try: int(x) except: return False else: return True
something = raw_input("Enter something and I will tell you the type: ") if isIntLike(something): print "I am an int" elif isinstance(something, type('')): print "I am a string" else: print "I am an impostor!" [/code] Note that you should be using raw_input() rather than input(). The former always returns a string. The latter tries to execute the input, hence your error message. Also note that everything input on the command line is a string, regardless of what you type. If you want type checking, use C++ or java. If you want to check for anything more than IntLike strings, you should consider using regular expressions through the 're' package. For user-defined types, use 'isinstance(something, class object)' to check for a type. Lastly, you may be interested in the 'getopt' module, which handles command line arguments (as opposed to prompting user for input) automatically. See here: http://python.active-venture.com/lib/module-getopt.html Check out the Python Cookbook for lots of good examples: http://aspn.activestate.com/ASPN/Cookbook/Python HTH, Jay Alex Pavluck wrote: > Hello. I get the following error with the following code. Is there > something wrong with my Python installation? > > code: > import types > something = input("Enter something and I will tell you the type: ") > > if type(something) is types.IntType: > print "you entered an integer" > elif type(something) is types.StringType: > print "you entered a string" > > error: > String: Source for exec/eval is unavailable -- http://mail.python.org/mailman/listinfo/python-list