Python isinstance()函数

描述:

isinstance()函数用来判断对象是否是一个已知类型,和type()函数类似。但是有区别,type()不考虑继承关系,不认为子类是一种父类类型,而isinstance() 考虑继承关系,认为子类是一种父类类型。所以,比较两个类型是否相同,推荐用isinstance()。

语法:

isinstance(object, classinfo)

参数介绍:

object --- 实例对象
classinfo --- 直接或间接类名、基本类型或者由它们组成的元组

返回值:

对象的类型与参数 classinfo 相同则返回 True,否则返回 False。

下面例子展示isinstance()函数使用方法

a = 8
print(isinstance(a,int)) #True
print(isinstance(a,str)) #False
print(isinstance(a,(str,int,list))) #元组中的一个,返回True
#type() 与 isinstance()区别
class A:
    pass
class B(A):
    pass
print(isinstance(A(),A)) #返回True
print(type(A()) == A)    #返回True

print(isinstance(B(),A)) #返回True
print(type(B()) == A)    #返回False

输出

True
False
True
True
True
True
False

引申:可以对比学习python type()函数

本期isinstance()函数就学到这里

你可能感兴趣的:(Python,python,isinstance()函数,内置函数)