• 技术文章 >后端开发 >Python教程

    Python中请使用isinstance()判断变量类型

    2016-06-16 08:42:31原创1314

    一、isinstance()

    在Python中可以使用type()与isinstance()这两个函数判断对象类型,而isinstance()函数的使用上比type更加方便。

    复制代码 代码如下:


    # coding=utf-8

    a = 10

    def b():
    pass

    print isinstance(a,(int,str))
    print isinstance(a,(float,str))
    print isinstance(b,(str,int))

    class c:
    pass

    obj = c()

    print isinstance(obj,(c,int))


    执行结果:
    复制代码 代码如下:


    True
    False
    False
    True

    二、isinstance 和 type的区别

    isinstance 和 type的区别在于:

    复制代码 代码如下:


    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 False


    区别就是 对于subclass之类的 type就不行了,所以,强烈建议不要使用type判断对象类型。

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

    相关文章推荐

    • Python 面试高频问题:__Init__ 和__New__的区别• 不会做图表?十个Python数据可视化库来帮你!• Python函数式编程:返回函数与匿名函数• Python中简单易用的并行加速技巧• 三个节省时间的 Python 技巧!
    1/1

    PHP中文网