Terry Hancock wrote:
On Tuesday 15 June 2004 01:00 pm, Asad Habib wrote:
Hello. Does anyone know of a python function that returns a value based on whether or not its argument is an integer? Any help would be greatly appreciated. Thanks.
Well, the usual way to check in Python is an idiom like:
if type(spam)==type(1): print "Yep, it's an integer." else: print "Whoops. Not an integer."
so it's not a function, but an expression.
Unfortunately, Zope doesn't allow you to use "type()" in a Python script for mysterious security reasons. So, it's either go to an external method, allow that import, or find out an alternate way to do it.
The alternate function to type() that Zope provides is same_type(): if same_type(value, 1): print "value is integer" elif same_type (value, "abc"): print "value is string" elif same_type(value, 1.0): print "value is float" You can try casting the value to an int and catch the exception if it fails: try: int_val = int(value) except ValueError: print "value is not integer" John