在判断比较类型时最好使用instance这个函数,而不是type,因为:
instance会检索对象的类的所有继承的类,如果检索到,返回True,否则返回False
type只比较对象是否为当前的类
- 举例论证
class A:
pass
class B(A):
pass
b = B()
print(isinstance(b, B))
print(isinstance(b, A))
print(type(b) == B)
print(type(b) == A)
- 输出结果
>>>True
>>>True
>>>True
>>>False
可以看到type无法检索出 A类
















