python中为什么使用isinstance判断类

这篇文章主要介绍了python中为什么使用isinstance判断类,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获。下面让小编带着大家一起了解一下。

让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:域名注册、虚拟空间、营销软件、网站建设、滦南网站维护、网站推广。

在函数判断上我们也讲了很多,有的是针对于类型,有的是判断条件,今天我们主要讲的是类的判断。很多小伙伴在进行类判断的时候,分不清type和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判断类内容对大家有帮助,同时也希望大家多多支持创新互联,关注创新互联行业资讯频道,遇到问题就找创新互联,详细的解决方法等着你来学习!


网页标题:python中为什么使用isinstance判断类
标题来源:http://hbruida.cn/article/pdeocs.html