栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

python中用isinstance判断类的原因是什么?

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

python中用isinstance判断类的原因是什么?

在函数判断上我们也讲了很多,有的是针对于类型,有的是判断条件,今天我们主要讲的是类的判断。很多小伙伴在进行类判断的时候,分不清type和isinstance的区别,虽然它们都能用来判断,但是在判断类型条件上有一定的区别,接下来小编就为大家讲讲在python中我们选择isinstance判断类的原因。

isinstance语法

isinstance(object, classinfo)
isinstance

函数说明 :当我们定义一个class的时候,我们实际上就定义了一种数据类型。我们定义的数据类型和Python自带的数据类型,比如str、list、dict没什么两样。

isinstance() 与 type() 区别:

当我们定义一个class的时候,我们实际上就定义了一种数据类型。我们定义的数据类型和Python自带的数据类型,比如str、list、dict没什么两样。

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

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

如果要判断两个类型是否相同推荐使用 isinstance()。

类型判断用isinstance,不用type

type()不会认为子类是一种父类类型。isinstance()会认为子类是一种父类类型。

class Foo(object):
    pass
 
class Bar(Foo):
    pass
 
print(type(Foo()) == Foo)
print(type(Bar()) == Foo)
print(isinstance(Foo(), Foo))
print(isinstance(Bar(), Foo))
 
# 输出:
True
False
True
True


以上就是python中哦们选择用isinstance判断类的原因了,因为isinstance需要用到继承关系,这是type所不能考虑到的,小伙伴下次使用的时候一定要记住啦。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/11406.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号