在线客服
扫描二维码
下载博学谷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开发中字典和 json的区别
Python开发中字典和 json的区别:字典是一种数据结构,json是一种数据的表现形式,字典的 key 值只 要是能 hash 的就行,json 的必须是字符串。
11373
2019-06-27 14:09:52
新手学Python可行吗?需要什么基础?
新手学Python可行吗?其实Python可以说是最适合新手学习的编程语言。为什么这么说呢?难道学Python不需要什么基础吗?其实如果学习者有一定的计算机基础,学Python会更快,但是没基础也能学好Python,只要肯下功夫。大家了解了新手学Python的可行性之后,还要掌握零基础如何学习Python的方法,毕竟自信和决心只是学习的第一步。
5728
2019-08-19 13:38:17
了解Python五大特性提高工作效率
Python作为近些年来新崛起的编程语言黑马,发展可以说是势如破竹,风头强劲。而随着Python一起升温的,还有全民学习Python的热度。虽说Python是新手友好的语言,但对于零基础的初学者而言,学习一门编程语言的难度并不低。为了帮助大家更好的掌握Python,本文将为大家总结归纳可以提高工作效率的Python五大特性,分别是列表操作、压缩和枚举、列表推导式、虚拟环境的使用和生成器。
5476
2020-01-11 19:26:10
开发中Django和Flask框架的区别是什么?
Django和Flask框架的区别是什么?Python中Django框架和Flask框架都是比较常见的,在开发应用系统时,使用框架可以提升开发效率,让应用开发更加规范、拓展性更强,程序员把更多的精力放在业务逻辑的实现上,而不是重复、而复杂的基础环境上。
5741
2020-08-24 16:15:31
重定向命令如何使用?代码怎么实现?
重定向命令如何使用?重定向称为输出重定向,把在终端执行命令的结果保存到目标文件。只要在终端能显示信息的命令都可以使用重定向
2823
2022-03-08 12:00:25