2020/11/13 Python基础学习课程九:函数(二)

九、函数(二)

1、高级函数

  • 定义:接收函数作为参数,或者将函数作为返回值返回的函数,我们就叫它高级函数
  • 1、将函数作为返回值的高级函数,如递归函数
  • 2、将函数作为参数的高级函数

2、闭包

  • 定义:将函数作为返回值的高级函数我们也称之为闭包
  • 好处:
    o 通过闭包,我们可以创建一些只有当前函数才能访问的变量,不易被修改
    o 可以将一些私有的数据藏到闭包中
  • 条件:
    o 函数嵌套
    o 将内部函数作为返回值返回
    o 内部函数必须用到外部函数的变量

3、命名空间

  • 定义:命名空间包含当前作用域的所有信息,包括变量,函数,初始化信息等
  • 用法:locals()用来获取当前作用域的命名空间,并返回一个字典
    在这里插入图片描述

4、装饰器

4.1 装饰器的引入
  • 背景:我们在修改代码时如果采取直接修改函数中的代码来完成需求,可以,但会产生以下一些问题:
    o 如果需修改的函数过多,则修改起来会比较麻烦
    o 不方便后期维护
    o 违反了开闭原则(ocp)(ocp指的是程序设计要求开放对程序的扩展,关闭对程序的修改)
  • 为了解决上述开发中遇到的问题,我们引入装饰器这一概念
4.2 装饰器的使用
  • 装饰器的作用:通过装饰器,我们可以在不修改原来函数的情况下对函数进行扩展
  • 在开发中我们都是用装饰器来扩展函数的功能的

  • 正常的装饰器用法应该如下,上面的是原理演示

感想:这两章函数的总结,到了Python例最重要也是以后运用最多的部分;虽然举的例子都相对比较简单,但只有真的懂了这些函数方法的原理,之后的高级编程运用才能灵活,才能看懂,所以我自己也要经常抽出时间来复习这一块

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值