悲伤的自由 发表于 2017-8-26 22:01:35

isinstance 和 type 的区别

type() 和isinstance()函数都可以用来查询变量所指的对象类型,但是它们是有区别的。
输入下面代码比较:
class A:
    pass

class B(A):
    pass

isinstance(A(), A)# returns True
type(A()) == A      # returns True
isinstance(B(), A)    # returns True
type(B()) == A      # returns False

区别就是:
type()不会认为子类是一种父类类型。
isinstance()会认为子类是一种父类类型。
页: [1]
查看完整版本: isinstance 和 type 的区别