2011-02-07 68 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