type()和isintance()函数的区别
isinstance() 与 type() 区别:
-
type() 不会认为子类是一种父类类型,不考虑继承关系。
-
isinstance() 会认为子类是一种父类类型,考虑继承关系。
如果要判断两个类型是否相同推荐使用 isinstance()。
class A(object):
pass
class B(A):
pass
print(isinstance(2, int))#True
print(type(2) == int)#True
print(isinstance(A(), A))#True
print(isinstance(B(), A))#True
print(type(A()) == A)#True
print(type(B()) == A)#False
网友评论