python isinstance与type函数用法

795次阅读
没有评论

这两个函数有意义用法差不多,都是查看对象的,但是两者之间也有一定区别,具体内容请看下文~

python

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()认为子类是一种父类类型

# 父类
class A:
 pass
# 子类
class B(A):
 pass
 
print(type(A()) == A) # returns True
print(isinstance(A(), A)) # returns True
 
print(type(B()) == A) # returns False
print(isinstance(B(), A)) # returns True

大家以后在使用两者函数时,可以区别选取最适合的啦。

神龙|纯净稳定代理IP免费测试>>>>>>>>天启|企业级代理IP免费测试>>>>>>>>IPIPGO|全球住宅代理IP免费测试

相关文章:

版权声明:wuyou2021-06-07发表,共计596字。
新手QQ群:570568346,欢迎进群讨论 Python51学习