isinstance()函数
描述:
Python 中的isinstance函数,isinstance是Python中的一个内建函数。是用来判断一个对象的变量类型。
语法:
以下是 isinstance() 方法的语法:
isinstance(object, classinfo)
参数:
- object -- 实例对象。
- classinfo -- 可以是直接或间接类名、基本类型或者有它们组成的元组。
返回值:
官方定义:如果对象的类型与参数二的类型(classinfo)相同则返回 True,否则返回 False。
理解:如果参数object是classinfo的实例,或者object是classinfo类的子类的一个实例, 返回True。如果object不是一个给定类型的的对象, 则返回结果总是False。
如果classinfo不表示一个类(类型对象), 那么它要么是一个类的元组, 或者递归地包含这样的(由数据类型构成的)元组.其他的序列类型是不被允许的。
实例:>>>a = 2
>>> isinstance (a,int)True
>>> isinstance (a,str)False
>>> isinstance (a,(str,int,list)) # 是元组中的一个返回 True
True
type() 与 isinstance()区别:
class A:
pass
class B(A):
pass
type(A()) == A # returns True
isinstance(B(), A) # returns True
type(B()) == A # returns False
issubclass( )函数
描述
issubclass() 方法用于判断参数 class 是否是类型参数 classinfo 的子类。
语法
以下是 issubclass() 方法的语法:
issubclass(class, classinfo)
参数
- class -- 类。
- classinfo -- 类。
返回值
如果 class 是 classinfo 的子类返回 True,否则返回 False。
实例
以下展示了使用函数的实例:
class A:pass
class B(A):
pass
print(issubclass(B,A)) # 返回 True