python装饰器(一)闭包功能(python装饰器用法)

网友投稿 288 2022-08-31


python装饰器(一)闭包功能(python装饰器用法)

闭包的功能和作用:

*闭包的作用是用来增强原有函数的功能 *在有些情况下,不能在原有的函数上增加内容,而闭包可以在外部函数中定义一个内部函数,并引用原来的函数,增加内容,随后返回这个内部函数

举个例子,如下(要求不能改变sum函数): sum函数(主函数)主要是将1到100的数都加起来。 show函数(辅助函数)中定义了一个show_in函数在里面写入增加的内容并引用sum函数,随后将show_in返回,返回后的函数是增强后的函数。

def sum(): sumdate = 0 for i in range(1,101): sumdate += i print(sumdate)def show(fun): def show_in(): print('1到100的和:') fun() return show_inmy_sum = show(sum) #将返回的函数给了my_sum,此时这里的my_sum就不是普通的变量了,而是一个函数my_sum() #调用my_sum

输出结果是: 1到100的和: 5050

*还能将两个函数合并在一起使用,并产生一个新函数

import timedef odd_sum(): sumdate = 0 for i in range(1,101): if i%2 == 1 : sumdate += i print(sumdate)def even_sum(): sumdate = 0 for i in range(1,101): if i%2 == 0 : sumdate += i print(sumdate)def show(fun1,fun2): def show_in(): print('1到100的奇数和:') fun1() print('1到100的偶数和:') fun2() return show_insum = show(odd_sum,even_sum) #将返回的函数给了sumsum() #调用sum函数

输出结果是: 1到100的奇数和: 2500 1到100的偶数和: 2550


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Python 中最快的循环方式(python基础教程)
下一篇:python构造方法和析构方法(python构造方法和析构方法的作用)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~