• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

Python内置isinstance函数详细介绍

python 搞代码 4年前 (2022-01-09) 51次浏览 已收录 0个评论

英文文档:

isinstance(object, classinfo)

Return true if the object argument is an instance of the classinfo argument, or of a (direct, indirect or virtual) subclass thereof. If object is not an object of the given type, the function always returns false. If classinfo is a tuple of type objects (or recursively, other such tuples), return true if object is an instance of any of the types. If classinfo is not a type or tuple of types and such tuples, a TypeError exception is raised.

说明:

  1. 函数功能用于判断对象是否是类型对象的实例,object参数表示需要检查的对象,calssinfo参数表示类型对象。

  2. 如果object参数是classinfo类型对象(或者classinfo类对象的直接、间接、虚拟子类)的实例,返回True。

>>> isinstance(1,int)True>>> isinstance(1,str)False# 定义3各类:C继承B,B继承A>>> class A:    pass>>> class B(A):    pass>>> class C(B):    pass>>> a = A()>>> b = B()>>> c = C()>>> isinstance(a,A) #直接实例True>>> isinstance(a,B)False>>> isinstance(b,A) #子类实例 True>>> isinstance(c,A) #孙子类实例True

  3. 如果object参数传入的是类型对象,则始终返回False。

>>> isinstance(str,str)False >>> isinstance(bool,int)False

  4. 如果classinfo类型对象,是多个类型对象组成的元组,如果object对象是元组的任一类型对象中实例,则返回True,否则返回False。

>>> isinstance(a,(B,C))False>>> isinstance(a,(A,B,C))True

本文来源gaodai$ma#com搞$代*码*网(

  5. 如果classinfo类型对象,不是一个类型对象或者由多个类型对象组成的元组,则会报错(TypeError)。

>>> isinstance(a,[A,B,C])Traceback (most recent call last):  File "<pyshell#23>", line 1, in <module>    isinstance(a,[A,B,C])TypeError: isinstance() arg 2 must be a type or tuple of types

以上就是Python内置isinstance函数详细介绍的详细内容,更多请关注搞代码gaodaima其它相关文章!


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:Python内置isinstance函数详细介绍

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址