What's the Pythonic way to determine if a string is a number? By number I mean a valid integer or float.
I searched the string and cMath libraries for a similar function without success. I can think of at least 3 or 4 ways to build my own function. Here's what I came up with as a proof-of-concept. Are there 'better' ways to perform this type of test? Thanks, Malcolm <code> def isnumber( input ): try: if '.' in input: num = float( input ) else: num = int( input ) return True except ValueError: return False if __name__ == '__main__': tests = """ 12 -12 -12.34 .0 . 1 2 3 1 . 2 just text """ for test in tests.split( '\n' ): print 'test (%0s), isnumber: %1s' % \ ( test.strip(), isnumber( test ) ) </code> -- http://mail.python.org/mailman/listinfo/python-list