推广 热搜: 铸铁T型槽平台  封号  北京  手中  BQG250/0.3气动隔膜泵  收购ACF  牵手  滤芯  清扫器刮刀  动词 

isinstance的简单介绍

   日期:2023-04-06     浏览:34    评论:0    
核心提示:Python中isinstance()的用法?isinstance()函数来判断一个对象是否是一个已知的类型,类似type()。语法isinstance(object,classinfo)参数obje

Python中isinstance()的用法?

isinstance()函数来判断一个对象是否是一个已知的类型,类似type()。

语法

isinstance(object,classinfo)

参数

object-实例对象

classinfo-可以是直接或者间接类名,基本类型或者由它们组成的元组

返回值

如果对象的类型与参数二的类型相同则返回True,否则返回False。

python 3 isinstance函数的用法,下面的代码如何解释?

isinstance 的用法:

语法:

isinstance(object, classinfo)

其中,object 是变量,classinfo 是类型即 (tuple,dict,int,float,list,bool等) 和 class类

若参数 object 是 classinfo 类的实例,或者 object 是 classinfo 类的子类的一个实例, 返回 True。

若 object 不是一个给定类型的的对象, 则返回结果总是False。

若 classinfo 不是一种数据类型或者由数据类型构成的元组,将引发一个 TypeError 异常。

例如:

isinstance(3, int)

True

isinstance(3.5, float)

True

isinstance(123,str)

False

isinstance('adf',(str,float,int))

True

class myClass:

pass

test = myClass()

isinstance(test, myClass)

True12345678910111213141516171234567891011121314151617

type()与isinstance()的区别:

共同点:两者都可以判断对象类型

不同点:对于一个 class 类的子类对象类型判断,type就不行了,而 isinstance 可以。

例如:

class A:

pass

class B(A):

pass

isinstance(A(), A) # returns True

type(A()) == A # returns True

isinstance(B(), A) # returns True

type(B()) == A # returns False1234567891012345678910

综上,推荐使用 isinstance 判断对象类型。

isinstance、type区别

type() 与 isinstance()区别:

class A:

pass

class B(A):

pass

print(isinstance(A(), A))

print(type(A()) == A)

print(isinstance(B(), A))

print(type(B()) == A)

True

True

True

False

print(type(A())) :class ' main .A'

print(type(A)) : class 'type' 没毛病,类A是由元类创建的,只是继承object

print(type(B)) : class 'type'

a = 123

print(type(a)) : class 'int' int 是一个内建的类

a = "123"

print(type(a)) :class 'str'

type() 不会认为子类是一种父类类型,不考虑继承关系。

isinstance() 会认为子类是一种父类类型,考虑继承关系。

issubclass() 方法用于判断参数 class 是否是类型参数 classinfo 的子类。

class A:

pass

class B(A):

pass

class C(A):

pass

print(issubclass(B,A)) # 返回 True

print(issubclass(C, B)) # 返回False

Python—assert、isinstance的用法

Python—assert、isinstance的用法

1 assert

assert 语句是一种插入调试断点到程序的一种便捷的方式。

2 isinstance

当我们定义一个class的时候,我们实际上定义了一种数据类型。

判断一个变量是否某个类型可以用isinstance()判断:

class Students():

def init (self,name,score):

self.name = name

self.score = score

a = '10'

b = 3

c = [1,2,3]

d = (1,2,3)

f = Student('Eden',99.9)

print(isinstance(a, str)) # True a属于字符串

print(isinstance(b, int)) # True b属于整形

print(isinstance(c, list)) # True c属于整形

print(isinstance(d, tuple)) # True d属于元组

print(isinstance(f, Student)) # True f属于类

3 assert isinstance

a = 2

assert isinstance(a,int) # 插入断言,判断a是否为int类型

isinstance的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于、isinstance的信息别忘了在本站进行查找喔。

原文链接:http://www.ccyys.cn/news/show-11799.html,转载和复制请保留此链接。
以上就是关于isinstance的简单介绍全部的内容,关注我们,带您了解更多相关内容。
 
标签: 类型 子类 对象
打赏
 
更多>同类资讯
0相关评论

推荐资讯
网站首页  |  VIP套餐介绍  |  关于我们  |  联系方式  |  使用协议  |  版权隐私  |  SITEMAPS  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报