• 青少年python系列 38.高阶函数


    青少年python教学视频ppt源码

    青少年python系列目录_老程序员115的博客-CSDN博客

            从之前的文章了解循环嵌套与选择结构的嵌套,这些程序结构的嵌套使得我们有可能解决更为复杂的问题。在python中函数也是如此,有别与我们初学的函数,嵌套可以让我们创造更加高阶的函数,帮助我们处理更加复杂多变的问题,简化我们的程序结构。那么在高阶函数中,我们熟知的参数与返回值又会有着怎样的变化与不同?

    1 函数的嵌套

            python是允许创建嵌套函数的,也就是说我们可以在函数内部定义一个或者多个函数。我们把它们分为外函数和内函数。嵌套函数是为函数内部服务的,比如减少代码的重复,想要调用函数,要使用函数名,内函数也一样。如果不用函数名调用内函数,内函数就永远不会执行。

            外函数内部调用内函数,即用函数名调用。

            这样调用外函数也会执行内函数的代码块。

            如果在函数外直接调用内函数,则程序运行会报告错误。

    这是因为内外函数有着各自的作用域,函数的调用要符合函数的调用的规则。

    2 函数的参数拓展

    必备参数

    函数调用时的数量,位置,参数类型必须和定义时的一致。

    如例子中一样,如果此时传入的实参不是1与2,而是两个不同数据类型的参数,那么函数运行时就会报错,必备参数也叫位置参数,它对于形参与实参的数量,位置,参数类型都有很严格的规定。

    关键字参数

    通过定义关键字获取实参的值,与形参的顺序无关。

    如例,关键字参数在实参传入时,会通过关联形参名来传值,此时python会自动按照参数名来匹配参数值,与必备参数相比,关键字参数对传参顺序没有要求,但依然严格要求传参的数据类型与数量。

    默认参数

    默认参数即在定义函数时为形参添加默认值,调用函数时,默认参数的值如果没有新传入,则被认为是默认值。

    这和我们平常的密码设置很相像,在函数形参定义时就为形参设置一个默认值,当实参没有新值传入时,参数就会使用默认值。就像如果账户没有设置密码,那么就会自动设置为默认密码。

    "函数"参数

    函数也可以作为函数的参数

     函数和其他变量是一样,变量是可以传递和修改值的,函数也可以作为变量,所以函数也可以作为函数的参数

    在这个例子中我们可以清晰的看出,函数可以作为参数,参与另一个函数的定义。

    3 函数的返回值拓展

    我们知道,变量可以传递和修改值的,函数也是如此,所以函数不仅可以当作做参数,也可以作为返回值。

    如例,内函数可以作为外函数的返回值被调用。

    "return函数名()"调用内函数

    return语句可以返回值与结束函数调用,也可以在嵌套函数中使用return语句来调用内函数,对于外函数来说,此时内函数相当于它的返回值,这样,我们在调用外函数时就可以一起调用内函数

    "return函数名",调用内函数

            如例,此时return func2后面并没有括号,意味着在此处并不是调用内函数func2(),而是,在返回func2()函数所在的位置,所以在函数外调用函数时,我们先调用外函数func1,通过return来返回内函数的位置,再增加括号,调用内函数.

    总结

    1、函数的嵌套

            在一个函数中定义了另外一个函数。分为外函数和内函数

    2、函数的参数拓展

            必备参数、关键字参数、默认参数、“函数”参数

    3、函数的返回值拓展

            “函数”返回值、"return函数名()"调用内函数、"return函数名"调用内函数

  • 相关阅读:
    【Web前端大作业实例网页代码】html+css新闻资讯网页带dw模板和登陆注册(9页)
    前端常考手写面试题汇总
    Python数据的输入与输出
    详细解读Spring Boot中@Import三种使用方式
    LeetCode 0179. 最大数
    ICCV2023人脸识别TransFace论文及代码学习笔记
    入职算法工程师后敲的非常有趣使用的小工具
    十年架构师养成记!MySQL+Redis+ZK+Nginx实战技术,大厂向你招手
    免费热门api分享,含物流、短信、天气查询等
    拉格朗日中值定理习题
  • 原文地址:https://blog.csdn.net/u012284021/article/details/127688965