print "Big number test" v=[1,1.0,1L,-1,-1.0,-1L,2,2.0,2L,-2,-2.0,-2L,1e9,-1e9,1e-9,-1e-9,123456789L,12345678901234567890123456789L] o=['+','-','*','/','**','%','<','=','>','<=','!=','>='] def oper(v1, v2, op): if (op == '+'): print " ",v1,op,v2,"=",v1+v2,type(v1+v2) elif (op == '-'): print " ",v1,op,v2,"=",v1-v2,type(v1-v2) elif (op == '*'): print " ",v1,op,v2,"=",v1*v2,type(v1*v2) elif (op == '/'): print " ",v1,op,v2,"=",v1/v2,type(v1/v2) elif (op == '**'): print " ",v1,op,v2,"=",v1**v2,type(v1**v2) elif (op == '%'): print " ",v1,op,v2,"=",v1%v2,type(v1%v2) elif (op == '<'): print " ",v1,op,v2,"=",v1'): print " ",v1,op,v2,"=",v1>v2,type(v1>v2) elif (op == '<='): print " ",v1,op,v2,"=",v1<=v2,type(v1<=v2) elif (op == '!='): print " ",v1,op,v2,"=",v1!=v2,type(v1!=v2) elif (op == '>='): print " ",v1,op,v2,"=",v1>=v2,type(v1>=v2) for x in v: print "Op 1 ::: ",type(x),x for y in v: print " Op 2 ::: ",type(y),y for z in o: try: oper(x, y, z) except: print "Can't ",type(x),z,type(y)