美文网首页廖雪峰的python基础教程学习笔记
Python学习笔记(五)函数参数类型检查

Python学习笔记(五)函数参数类型检查

作者: 晶爷传说 | 来源:发表于2018-02-15 15:25 被阅读0次

    instance()的用法


    语法:

    instance(object, classinfo)
    

    其中,object是变量,classinfo是类型(int/float/bool/list/tuple/dict/set)和类(class),如果object是classinfo类的一个实例或是classinfo类的子类的一个实例,则返回Ture,否则返回False。如果classinfo不是一种数据类型或有数据类型构成的元组,将引发一个TypeError异常。
    type()也可以判断对象类型,但是不能判断class类的子类对象类型。


    例子:函数my_abs()

    def my_abs(x):
    if not isinstance(x, (int, float)):
        raise TypeError('bad operand type')
    if x >=0:
        return x
    else:
        return -x
    
    
    >>>my_abs('a')
    Traceback (most recent call last):
    File "/Users/lijing/python_test/test.py", line 10, in <module>
    p = my_abs('a')
    File "/Users/lijing/python_test/test.py", line 4, in my_abs
    raise TypeError('bad operand type')
    TypeError: bad operand type
    

    相关文章

      网友评论

        本文标题:Python学习笔记(五)函数参数类型检查

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