闭包.装饰器
Loco_Python.
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
修改闭包内使用的外部变量
修改闭包内使用的外部变量的错误示例: 定义一个外部函数 def func_out(num1): # 定义一个内部函数 def func_inner(num2): # 这里本意想要修改外部num1的值,实际上是在内部函数定义了一个局部变量num1 num1 = 10 # 内部函数使用了外部函数的变量(num1) result = num1 + num2 pri...原创 2019-08-25 21:28:22 · 1582 阅读 · 0 评论 -
闭包的使用
闭包 学习目标 能够知道闭包的构成条件 能够知道定义闭包的语法格式 1. 闭包的介绍 我们前面已经学过了函数,我们知道当函数调用完,函数内定义的变量都销毁了,但是我们有时候需要保存函数内的这个变量,每次在这个变量的基础上完成一些列的操作,比如: 每次在这个变量的基础上和其它数字进行求和计算,那怎么办呢? 我们就可以通过咱们今天学习的闭包来解决这个需求。 闭包的定义: 在函数嵌套的前提下,内部函...原创 2019-08-25 21:48:41 · 497 阅读 · 0 评论 -
装饰器
装饰器 学习目标 能够知道定义装饰器的语法格式 装饰器的定义 就是给已有函数增加额外功能的函数,它本质上就是一个闭包函数。 装饰器的功能特点: 不修改已有函数的源代码 不修改已有函数的调用方式 给已有函数增加额外的功能 装饰器的示例代码 # 添加一个登录验证的功能 def check(fn): def inner(): print("请先登录....") ...原创 2019-08-25 22:29:19 · 196 阅读 · 0 评论 -
通用装饰器和多个装饰器的使用
1. 装饰带有参数的函数 # 添加输出日志的功能 def logging(fn): def inner(num1, num2): print("--正在努力计算--") fn(num1, num2) return inner # 使用装饰器装饰函数 @logging def sum_num(a, b): result = a + b ...原创 2019-08-28 18:25:55 · 454 阅读 · 0 评论 -
参数装饰器和类装饰器
带有参数的装饰器 学习目标 能够写出带有参数的装饰器 1. 带有参数的装饰器介绍 带有参数的装饰器就是使用装饰器装饰函数的时候可以传入指定参数,语法格式: @装饰器(参数,…) 错误写法: def decorator(fn, flag): def inner(num1, num2): if flag == "+": print("--正在努力加法...原创 2019-08-28 18:32:35 · 309 阅读 · 0 评论
分享