isinstance()函数是python内置函数,用来判断一个对象是否是一个已知的类型,类似type()。
语法
isinstance(object, classinfo)
参数
object——实例对象
classinfo——可以是直接或间接类名、基本类型或者由他们组成的元组。
返回值
如果对象类型与参数二的类型(classinfo)相同则返回True,否则返回Fals。

实例:

>>> a = 2
>>> isinstance(a, int)
True
>>> isinstance(a, str)
False
>>> isinstance(a, (int, str, bool))
True
>>> 

isinstance()与type()的区别
isinstance() 会认为子类是一种父类类型,考虑继承关系。
type() 不会认为子类是一种父类类型,不考虑继承关系。
如果要考虑两个类型是否相同,推荐使用isinstance()。


实例:

>>> class A:
pass

>>> class B(A):
pass

>>> isinstance(A(), A)
True
>>> type(A()) == A
True
>>> isinstance(B(), A)
True
>>> type(B()) == A
False
>>>

 

posted on 2019-08-07 15:22  懒惰的Grace  阅读(4059)  评论(0编辑  收藏  举报