问答详情
源自:9-5 Python函数参数

关于例子里的求绝对值的代码

def my_abs(x):
    if not isinstance(x, int) or not isinstance(x, float):
        print('param type error.')
        return None
    if x >= 0:
        return x
    else:
        return -x
他的例子错了吧,第二行的条件不应该是用and连接吗,按照他的若传入的参数是float,也会返回None

搜索

复制

提问者:爆肝返现 2022-02-16 23:42

个回答

  • weixin_宝慕林0492068
    2022-02-21 20:04:13

    我也觉得,如果是or的话,在参数类型是int或者float的情况下,就会输出param type error.,而一个参数不可能同时是int或float,就会导致if这个判断语句总会为true,就会输出param type error. 故这里应该用and连接。