Python isinstance

语法:isinstance(object,type)

作用:来判断一个对象是否是一个已知的类型。 

其第一个参数(object)为对象,第二个参数(type)为类型名(int...)或类型名的一个列表((int,list,float)是一个列表)。其返回值为布尔型(True or flase)。

若对象的类型与参数二的类型相同则返回True。若参数二为一个元组,则若对象类型与元组中类型名之一相同即返回True。

class objA:   
pass   
  
A = objA()   
B = 'a','v'   
C = 'a string'   
  
print isinstance(A, objA)   
print isinstance(B, tuple)   
print isinstance(C, basestring)   
输出结果:   
True   
True   
True   
  
   
不仅如此,还可以利用isinstance函数,来判断一个对象是否是一个已知的类型。  
isinstance说明如下:  
    isinstance(object, class-or-type-or-tuple) -> bool  
      
    Return whether an object is an instance of a class or of a subclass thereof.  
    With a type as second argument, return whether that is the object's type.  
    The form using a tuple, isinstance(x, (A, B, ...)), is a shortcut for  
    isinstance(x, A) or isinstance(x, B) or ... (etc.).  
  
其第一个参数为对象,第二个为类型名或类型名的一个列表。其返回值为布尔型。若对象的类型与参数二的类型相同则返回True。若参数二为一个元组,则若对象类型与元组中类型名之一相同即返回True。  
  
>>>isinstance(lst, list)  
True  
  
>>>isinstance(lst, (int, str, list) )  
True  




另外:Python可以得到一个对象的类型 ,利用type函数:

>>>lst = [1, 2, 3] >>>type(lst)<type 'list'>

 

posted @ 2017-03-10 17:37  浅雨凉  阅读(362)  评论(0编辑  收藏  举报