判断对象类型:isinstance() 函数来判断一个对象是否是一个已知的类型,类似 type()。
  1. isinstance(object, classinfo)对于基本类型来说 classinfo 可以是: int,float,bool,complex,str(字符串),list,dict(字典),set,tuple
  2. isinstance() type() 区别:
  3. type() 不会认为子类是一种父类类型,不考虑继承关系。
  4. isinstance() 会认为子类是一种父类类型,考虑继承关系。
  5. 如果要判断两个类型是否相同推荐使用 isinstance()。
  6. 例如:
  7. >>>a = 2
  8. >>> isinstance (a,int)
  9. True
  10. >>> isinstance (a,str)
  11. False
  12. >>> isinstance (a,(str,int,list)) # 是元组中的一个返回 True
  13. True
  14. class A:
  15. pass
  16. class B(A):
  17. pass
  18. isinstance(A(), A) # returns True
  19. type(A()) == A # returns True
  20. isinstance(B(), A) # returns True
  21. type(B()) == A # returns False