isinstance()函数使用要注意什么,和type()区别在哪
Admin 2022-08-26 群英技术资讯 451 次浏览
isinstance() 函数来判断一个对象是否是一个已知的类型,类似 type()。
type() 不会认为子类是一种父类类型,不考虑继承关系。
isinstance() 会认为子类是一种父类类型,考虑继承关系。
如果要判断两个类型是否相同推荐使用 isinstance()。
isinstance(object, classinfo)
object -- 实例对象。
classinfo -- 可以是直接或间接类名、基本类型或者由它们组成的元组。
classinfo可以是:int,float,bool,complex(复数),str(字符串),list,dict(字典),set,tuple
如果对象的类型与参数二的类型(classinfo)相同则返回 True,否则返回 False。
a = 'python' print(isinstance(a,str)) # True print(isinstance(a,list)) # False print(isinstance(a,dict)) # False print(isinstance(a,(dict,list,str))) # True 是否是dict,list,str中的一种类型 print(isinstance(2,int)) # True
class A: pass class B(A): pass a = A() b = B() print(isinstance(a,A)) # True print(isinstance(b,A)) # True # 考虑继承 print(type(b)==B) # True print(type(b)==A) # False 不考虑继承
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
最近在看Python基础教程(第三版),是之前python课的课本,但是之前没读过,虽然python一直用得挺多,但重新读读收获还挺大。这里做个笔记。先是迭代器是什么并简单实现一个迭代器,然后是实现了一些range()。迭代器是像循环一样重复很多次,但不会像列表那样一次性全部生成,而是需要用...
对于python中多个列表,我们可以选择将有用的列表合并使用。python中extend()方法可以在列表的尾部追加一个列表。使用这种方法可以直接在原有列表后加上了需要合并的新列表,扩增的原有的列表,已达到合并列表的需求。
Python是一种非常富有表现力的语言。它为我们提供了一个庞大的标准库和许多内置模块,帮助我们快速完成工作。然而,许多人可能会迷失在它提
Daemon场景考虑如下场景:你编写了一个python服务程序,并且在命令行下启动,而你的命令行会话又被终端所控制,python服务成了终端程序的一
这篇文章主要介绍了Python Socket编程的相关资料,帮助大家更好的理解和学习使用python,感兴趣的朋友可以了解下
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008