isinstance()函数
语法:
isinstance(object,classinfo)
作用:
用于判断object对象的类型是否为classinfo类型。其中,classinfo可以基本类型名(如,int、str、float、list等),也可以为一个类型名元组比如(int,str,float,dict,tuple)元组。
返回值:
1)当第二个参数classinfo为某一类型名时,如果object对象的类型与classinfo的类型名一致,则函数返回True,否则,返回Flase;2)当第二个参数classinfo为类型名组成的元组时,如果object对象的类型与classinfo类型名元组中的某一个类型名一致,则函数返回True,否则,返回Flase。
备注:
为了提高代码的健壮性,在需要进行类型检查时,通常推荐采用isinstance()函数,而不是type().
isinstance() 与 type() 区别:
1)type() 不会认为子类是一种父类类型,不考虑继承关系。
2)isinstance() 会认为子类是一种父类类型,考虑继承关系。
引用:http://www.runoob.com/python/python-func-isinstance.html
a = 8
isinstance(a,int)
True
isinstance(a,str)
False
isinstance(a,(str,float,list,tuple))
False
isinstance(a,(str,int,list,dict))
True
A = [1,2,3]
isinstance(A,(int,list,tuple))
True