本文主要学习闭包的定义和调用,理解闭包的作用,闭包在编程中会起到简化代码的作用,是一个很重要的知识点,让我们来详细看看。
前言
函数的闭包其实和函数的嵌套很相似,大家对于函数的嵌套应该是很熟悉的,那么先写一个简单的函数嵌套案例:
Python培训笔记-函数的闭包" alt="Python培训笔记-函数的闭包" style="box-sizing: border-box; padding-top: 0.6rem; padding-bottom: 1.5rem; list-style: none; border-width: 0px; border-style: initial; border-color: initial; outline: none; vertical-align: middle;" class="" data-ratio="0.28192371475953565" data-w="603" data-type="png">
当然这样去写两个数之和的函数,没有必要,而且还增加了代码量。
闭包
和嵌套不同,闭包的外部函数返回是一个函数,而不是一个具体的值,我们将上面的代码改为闭包。
这里外部函数返回的是add函数名,那我们怎么去调用闭包了?
我们先调用sum函数,用type方法看看调用结果的类型:
从结果可以看出,结果是一个函数类,我们需要在此基础上再进行传参,才能完成整个闭包功能。
上面的求和功能中,可能使用闭包的作用不大,而且还不如定义一个函数那么来的实在。
我们接下来计算下一个数的n次幂,用闭包写如下:
当然,我们也可以通过一个函数来写这个功能:
但是,使用闭包,可以让程序变得更加简洁易懂,我们想想,如果需要计算多个数的平方,就可以看出这两种方法调用的不同了。
显然,闭包的使用更加简洁,每次调用都少输入一个参数。
以上就是本文的全部内容。
ps:推荐一下我建的python学习交流扣扣qun:937667509,群里有免费的视频教程,开发工具、电子书籍、项目源码分享。学习python web、python爬虫、数据分析、大数据,人工智能等技术有不懂的可以加入一起交流学习,一起进步!