这两个函数有意义用法差不多,都是查看对象的,但是两者之间也有一定区别,具体内容请看下文~
type()是一个内置函数,可以用来查询变量所指的对象类型
isinstance()是用来判断该变量是否为某种数据类型
关于基本数据类型
直接看代码 #type print(type(1),type(True),type([1,2,3])) #isinstance print(isinstance(1,int)) print(isinstance(True,bool)) print(isinstance([1,2,3],tuple))
输出结果
<class'int'><class'bool'><class'list'> True True False
关于自定义类
对于自定义类来说:
type()认为子类和父类不是一种类型
isinstance()认为子类是一种父类类型
#父类 classA: pass #子类 classB(A): pass print(type(A())==A)#returnsTrue print(isinstance(A(),A))#returnsTrue print(type(B())==A)#returnsFalse print(isinstance(B(),A))#returnsTrue
大家以后在使用两者函数时,可以区别选取最适合的啦~如需了解更多python实用知识,点击进入Python学习网教学中心。
(推荐操作系统:windows7系统、Python 3.9.1,DELL G3电脑。)