如何检查变量是否为整数?


当前回答

如果你没有int,你可以这样做:

var = 15.4
if(var - int(var) != 0):
    print "Value is not integer"

其他回答

最简单的方法是:

if n==int(n):
    --do something--    

变量n在哪

测试,如果object是一个字符串(适用于Python 2。*和Python 3。*)

text = get_text()

try:
    text = text+""
except:
    return "Not a string"

do_something(text)

你也可以使用str.isdigit。尝试查找帮助(str.isdigit)

def is_digit(str):
      return str.isdigit()

如果你没有int,你可以这样做:

var = 15.4
if(var - int(var) != 0):
    print "Value is not integer"

考虑x = n**(1.0/m)的情况,其中n=10**5, m=5。 在Python中,x将为10.000000000000002,由于浮点算术运算,它不是整数。

所以我要检查一下

if str(float(x)).endswith('.0'): print "It's an integer."

我用下面的代码进行了测试:

for a in range(2,100):
    for b in range(2,100):
        x = (a**b)**(1.0/b)
        print a,b, x, str(float(x)).endswith('.0')

它对所有a和b输出True。