请问isinstance与type在用法上有哪些具体差异?
- 内容介绍
- 文章标签
- 相关推荐
本文共计185个文字,预计阅读时间需要1分钟。
在判断比较类型时,最好使用`instance`函数,而非`type`。原因是`instance`会搜索对象的继承类,如果找到,返回True,否则返回False。而`type`只比较对象是否为当前类及其父类的实例。
在判断比较类型时最好使用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)
- 输出结果 ```python >>>True >>>True >>>True >>>False可以看到type无法检索出 A类
本文共计185个文字,预计阅读时间需要1分钟。
在判断比较类型时,最好使用`instance`函数,而非`type`。原因是`instance`会搜索对象的继承类,如果找到,返回True,否则返回False。而`type`只比较对象是否为当前类及其父类的实例。
在判断比较类型时最好使用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)
- 输出结果 ```python >>>True >>>True >>>True >>>False可以看到type无法检索出 A类

