在线客服
扫描二维码
下载博学谷APP扫描二维码
关注博学谷微信公众号
闭包如何使用?能解决什么问题?闭包可以保存外部函数内的变量,且不会随着外部函数调用完而销毁。闭包可以提高代码的可重用性,不需要手动定义额外的功能函数,我们学习闭包需要掌握了解闭包的作用。
学习目标:能够知道闭包的作用
1. 案例
需求: 根据配置信息使用闭包实现不同人的对话信息,例如对话:
张三: 到北京了吗? 李四: 已经到了,放心吧。
2. 实现步骤说明
(1)定义外部函数接收不同的配置信息参数,参数是人名
(2)定义内部函数接收对话信息参数
(3)在内部函数里面把配置信息和对话信息进行拼接输出
3. 功能代码的实现
# 外部函数
def config_name(name):
# 内部函数
def say_info(info):
print(name + ": " + info)
return say_info
tom = config_name("Tom")
tom("hello!")
tom("你好, 在家吗?")
jerry = config_name("jerry")
jerry("今天不在家改天约!")
运行结果:
Tom: hello!
Tom: 你好, 在家吗?
jerry: 今天不在家改天约!
闭包案例说明:闭包还可以提高代码的可重用性,不需要再手动定义额外的功能函数。
5. 小结
闭包不仅可以保存外部函数的变量还可以提高代码的可重用行。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
如何理解Python开发中字符串中的\字符?
如何理解Python开发中字符串中的\字符?Python字符串中的\字符代表转义字符、路径名中用来连接路径名、编写太长代码手动软换行。
11352
2019-06-27 15:41:50
Python开发中给定两个列表怎么找出相同元素和不同元素?
Python开发中给定两个列表怎么找出他们相同元素和不同元素?相同元素:print(set1&set2);不同元素:print(set1^set2)
12633
2019-06-28 14:18:46
适合零基础人群学习的Python入门教程学什么?
适合零基础人群学习的Python入门教程:博学谷的IT在线就业班有Python学习教程,课程主要讲解:Python核心编程、Linux基础、前端开发、Web开发、爬虫开发等内容。
7900
2019-07-24 11:54:07
为什么说Python入门容易精通难?
Python应用领域广泛,没有具体的学习方向学完基础知识之后会很迷茫,应先确定好学习方向,按照这个学习方向建立学习路径规划。Python 非常适合初学者上手,相比较于其他主流编程语言其语言环境更接近自然语言,具备良好的可读性。
4272
2021-04-01 16:57:38
装饰器的作用及使用方法是什么?
装饰器的作用及使用方法是什么?外层函数返回里层函数的引用,里层函数引用外层函数的变量。装饰器在不改变已有函数源代码及调用方式的前提下对已有函数进行功能的扩展,通过我们需要学习掌握装饰器的作用及代码。
3540
2021-12-06 13:51:46