• 技术文章 >Python技术 >Python基础教程

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

    小妮浅浅小妮浅浅2020-12-07 11:08:32原创2027

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

    isinstance语法

    1

    2

    isinstance(object, classinfo)

    isinstance

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

    isinstance() 与 type() 区别:

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

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

    类型判断用isinstance,不用type

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

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    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所不能考虑到的,小伙伴下次使用的时候一定要记住啦。

    专题推荐:pythonisinstance
    上一篇:python bin函数应用 下一篇:怎么使用python中列表count函数?

    相关文章推荐

    • 基础教程:python isinstance与type函数用法

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网