美文网首页
【10.25】Python语法练习5/17

【10.25】Python语法练习5/17

作者: 零壹問答 | 来源:发表于2019-10-25 23:43 被阅读0次

    学习任务:函数与 Lambda 表达式

    一、函数
    Python中,定义函数要使用def语句,依次写出函数名、括号、括号中的参数和冒号:然后,在缩进块中编写函数体,函数的返回值用return语句返回。
    定义一个求绝对值的函数:
    def my_abs(x):
    if x >= 0:
    return x
    else:
    return -x

    函数体内部的语句在执行时,一旦执行到return时,函数就执行完毕,并将结果返回。因此,函数内部通过条件判断和循环可以实现复杂的逻辑。
    如果没有return语句,函数执行完毕后,也会返回结果,知识结果为none。

    空函数
    用pass语句可以定义一个空函数,pass可以作为占位符,如果还没想好怎么写函数的代码,可以先放一个pass,让代码能运行起来。
    pass还可以用在其他语句里,比如:
    if age >= 18:
    pass
    缺少pass,代码运行就会有语法错误。

    参数检查
    调用函数是,如果参数个数不对,python解释器会自动检查出来,并抛出TypeError。如果参数类型不对,Python解释器无法帮助检查出来。
    使用内置函数isinstance()可以对参数类型做检查。
    def my_abs(x):
    if not isinstance(x, (int,float)):
    raise TypeError('bad operand type')
    if x >= 0:
    return x
    else:
    return -x

    小结
    定义函数时,需要确定函数名和参数个数;
    如果有必要,可以先对参数的数据类型做检查;
    函数体内部可以用return随时返回函数结果;
    函数执行完毕也没有return语句时,自动 return None;
    函数可以同时返回多个值,但其实就是一个元组tuple。

    二、lambda表达式
    python中lambda语法是唯一的,其形式为:lambda argument_list: expression
    其中,argument_list是参数列表,可以有多种形式,expression是参数的表达式,且只能是单行。
    lambda函数是匿名的,输入是传入到参数列表argument_list的值,输出是根据表达式expression计算得到的值。单行expression决定lambda函数只能完成非常简单的功能。
    lambda x, y: xy 函数输入是x和y,输出是它们的积xy

    1、将lambda函数赋值给一个变量,通过这个变量间接调用该lambda函数
    2、将lambda函数赋值给其他函数,从而将其他函数用该lambda函数体换
    3、将lambda函数作为其他函数的返回值,返回给调用者
    4、将lambda函数作为参数传递给其他函数

    相关文章

      网友评论

          本文标题:【10.25】Python语法练习5/17

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