美文网首页
Python中数据类型的判断

Python中数据类型的判断

作者: 西漠 | 来源:发表于2017-09-11 22:38 被阅读169次

    Python在定义变量的时候不用指明具体的的类型,解释器会在运行的时候会自动检查 变量的类型,并根据需要进行隐式的类型转化。因为Python是动态语言,所以一般情 况下是不推荐进行类型转化的。比如"+"操作时,如果加号两边是数据就进行加法操 作,如果两边是字符串就进行字符串连接操作,如果两边是列表就进行合并操作,甚 至可以进行复数的运算。解释器会在运行时根据两边的变量的类型调用不同的内部方法。 当加号两边的变量类型不一样的时候,又不能进行类型转化,就会抛出TypeError的异常。

    通常类型判断可用两种方法来进行判断:

    • type()
    • isinstance()

    这两种方法有什么区别,用哪种比较好呢?
    对于内建的基本类型来说,使用tpye来检查是没有问题的, 可是当应用到其他场合的时候,type就显得不可靠了。比如:当我们对Python内建类型进行扩展的时候,type返回的结果就不够准确了。

    这个时候我们就需要使用isinstance来进行类型 检查。

    isinstance(object, classinfo)

    object表示实例,classinfo可以是直接或间接类名、基本类型或者有它们组成的元组。

    >>> isinstance(2, float)
    False
    >>> isinstance('a', (str, unicode))
    True
    >>> isinstance((2, 3), (str, list, tuple))
    True
    

    相关文章

      网友评论

          本文标题:Python中数据类型的判断

          本文链接:https://www.haomeiwen.com/subject/cnkqsxtx.html