2011-02-07 70 views
0

我希望能够判断一个变量是否是int,或者在Python中使用if语句。我将如何去做这件事。告诉什么类型的数据是什么,Python

+0

在Python中没有变量,有只是对象和对象的引用 – eyquem 2011-02-07 08:20:47

+3

@eyquem:这里没有必要是正式的。当然,Python中有变量,这个术语在官方文档中多次使用,例如, http://docs.python.org/tutorial/introduction.html#numbers(“等号('=')用于赋值给变量”)。 – 2011-02-07 08:42:03

回答

5

使用isinstance

if isinstance(var, int): 
    print "Int" 
elif isinstance(var, str): 
    print "Str" 
else: 
    print "Other:", type(var) 
2

你只需要使用isinstance:

value = 123 
if isinstance(value, int): 
    print "Int" 
else: 
    print "Not Int" 
3
if isinstance(x,int): 
print 'win' 
0

如果问题是检测是否绑定到一个int变量或值任何派生类型,所以isinstance是解决方案...

...但它不区分说intbool。 在Python 3:

>>> isinstance(123, int) 
True 
>>> isinstance(True, int) 
True 
>>> isinstance(123, bool) 
False 
>>> isinstance(True, bool) 
True 

如果你真的需要知道,如果一个值是int,没有别的,type()应该要走的路:

>>> type(123) 
<class 'int'> 
>>> type(123) == int 
True